| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- import { fileURLToPath, URL } from 'node:url'
- import { viteMockServe } from 'vite-plugin-mock'
- import path from 'path'
- import { defineConfig } from 'vite'
- import vue from '@vitejs/plugin-vue'
- import AutoImport from 'unplugin-auto-import/vite'
- import Components from 'unplugin-vue-components/vite'
- import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
- import { createSvgIconsPlugin } from 'vite-plugin-svg-icons'
- // https://vitejs.dev/config/
- export default defineConfig(({command})=>{
- return {
- base:'/',
- // 在生产环境中,将文件名中的 .js 替换为 .mjs
- css:{
- preprocessorOptions:{
- scss:{
- additionalData:'@import "./src/styles/variable.scss";' //引入scss文件
- }
- }
- },
- devServer:{
- proxy:{
- '/api':{
- target:'http://127.0.0.1:8081/',
- changeOrigin:true,
- secure:false,
- rewrite:(path)=>path.replace(/^\/api/,'')
- }
- }
- },
- plugins: [
- viteMockServe({
- // 保证开发阶段可以使用mock,生产环境禁止开启
- localEnabled: command === 'serve',
- mockPath: './mock' // mock数据所在的目录 ./mock 代表和vite.config.js同级目录即根目录
- }),
- AutoImport({
- resolvers: [ElementPlusResolver()],
- }),
- Components({
- resolvers: [ElementPlusResolver()],
- }),
- createSvgIconsPlugin({
- // 指定需要缓存的图标文件夹
- iconDirs: [path.resolve(process.cwd(), 'src/assets/icons')],
- // 指定symbolId格式
- symbolId: 'icon-[dir]-[name]'
- }),
-
- vue(),
- ],
- resolve: {
- alias: {
- '@': fileURLToPath(new URL('./src', import.meta.url))
- }
- }
- }
- })
|