vite.config.ts:
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { resolve } from 'path'
// https://vitejs.dev/config/
export default defineConfig({
plugins: [
vue(),
],
base: '/',
publicDir: 'assets',
build: {
minify: 'terser',
terserOptions: {
compress: {
// 生产环境打包移除console
drop_console: true,
drop_debugger: true,
}
}
},
server: {
host: 'localhost',
cors: true,
proxy: {
'/api': {
target: "http://xxxxx",
changeOrigin: true
}
}
},
resolve: {
alias: {
'@': resolve(__dirname, "./src")
}
}
})
tsconfig.json:
{
"compilerOptions": {
"allowJs": true,
"target": "ESNext",
"useDefineForClassFields": true,
"module": "ESNext",
"moduleResolution": "Node",
"strict": false,
"jsx": "preserve",
"resolveJsonModule": true,
"isolatedModules": true,
"esModuleInterop": true,
"lib": ["ESNext", "DOM"],
"skipLibCheck": true,
"noEmit": true,
"noImplicitAny": true,
"types": [
"node"
],
"baseUrl": ".",
"paths": {
"@/*": ["./src/*",],
}
},
"include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"],
"references": [{ "path": "./tsconfig.node.json" }]
}