| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- import path from 'path'
- import { ConfigEnv, UserConfig, loadEnv } from 'vite'
- import { viteMockServe } from 'vite-plugin-mock'
- import createVuePlugin from '@vitejs/plugin-vue'
- import vueJsx from '@vitejs/plugin-vue-jsx'
- import svgLoader from 'vite-svg-loader'
- const CWD = process.cwd()
- // https://vitejs.dev/config/
- export default ({ mode }: ConfigEnv): UserConfig => {
- const { VITE_BASE_URL } = loadEnv(mode, CWD)
- return {
- base: VITE_BASE_URL,
- define: {},
- resolve: {
- alias: {
- '@': path.resolve(__dirname, './src')
- }
- },
- css: {
- preprocessorOptions: {
- less: {
- modifyVars: {
- hack: `true; @import (reference) "${path.resolve(
- 'src/style/variables.less'
- )}";`
- },
- math: 'strict',
- javascriptEnabled: true
- }
- }
- },
- plugins: [
- createVuePlugin(),
- vueJsx(),
- viteMockServe({
- mockPath: 'mock',
- localEnabled: false, // 是否开启本地mock 我们用的远程连接 直接关闭 走代理就OK
- prodEnabled: true,
- supportTs: true,
- logger: true,
- injectCode: `
- import { setupProdMockServer } from '../mockProdServer';
- setupProdMockServer();
- `
- }),
- svgLoader()
- ],
- server: {
- port: 3001,
- host: '0.0.0.0',
- hmr: true,
- proxy: {
- '/api': {
- target: 'http://localhost:9995',
- changeOrigin: true,
- rewrite: (path) => path.replace(/^\/api/, '')
- }
- }
- }
- }
- }
|