1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- import { defineConfig, loadEnv } from "vite";
- import vue from "@vitejs/plugin-vue";
- import path from "path";
- import Components from "unplugin-vue-components/vite";
- import { VantResolver } from "unplugin-vue-components/resolvers";
- import VueSetupExtend from 'vite-plugin-vue-setup-extend'
- import {createSvgIconsPlugin} from 'vite-plugin-svg-icons'
- import { NodeGlobalsPolyfillPlugin } from '@esbuild-plugins/node-globals-polyfill'
- import { NodeModulesPolyfillPlugin } from '@esbuild-plugins/node-modules-polyfill'
- import rollupNodePolyFill from 'rollup-plugin-node-polyfills'
- // https://vitejs.dev/config/
- export default ({ mode }) =>
- defineConfig({
- base: loadEnv(mode, process.cwd()).VITE_APP_BASE_URL, // 若服务器不是将该项目放在根目录的则 需要此设置 和服务器上同名
- plugins: [
- vue(),
- Components({
- resolvers: [VantResolver()],
- }),
- VueSetupExtend(),
- createSvgIconsPlugin({
- // 指定需要缓存的图标文件夹
- iconDirs: [path.resolve(process.cwd(), 'src/assets/svg')],
- // 指定symbolId格式
- symbolId: '[name]',
- /**
- * 自定义插入位置
- * @default: body-last
- */
- // inject?: 'body-last' | 'body-first'
-
- /**
- * custom dom id
- * @default: __svg__icons__dom__
- */
- // customDomId: '__svg__icons__dom__'
- })
- ],
- css: {
- // css预处理器
- preprocessorOptions: {
- scss: {
- // 定义全局的scss变量
- // 给导入的路径最后加上 ;
- additionalData: `@import '@/assets/styles/var.scss';`,
- },
- },
- },
- resolve: {
- alias: {
- "@": path.resolve(__dirname, "./src"),
- stream: 'rollup-plugin-node-polyfills/polyfills/stream',
- buffer: 'rollup-plugin-node-polyfills/polyfills/buffer-es6',
- }
- },
- optimizeDeps: {
- esbuildOptions: {
- // Enable esbuild polyfill plugins
- plugins: [
- NodeModulesPolyfillPlugin()
- ]
- }
- },
- build: {
- outDir: loadEnv(mode, process.cwd()).VITE_APP_OUTDIR,
- rollupOptions: {
- plugins: [
- // Enable rollup polyfills plugin used during production bundling
- rollupNodePolyFill()
- ]
- }
- },
- server:{
- host:true
- }
- });
|