49 lines
1.2 KiB
TypeScript
49 lines
1.2 KiB
TypeScript
import { createViteConfig } from '@vtj/cli';
|
|
import { createDevTools } from '@vtj/local';
|
|
import AutoImport from 'unplugin-auto-import/vite';
|
|
import { defineConfig, loadEnv } from 'vite';
|
|
import mkcert from 'vite-plugin-mkcert';
|
|
|
|
export default defineConfig(({ mode }) => {
|
|
console.log('mode', mode);
|
|
const env = loadEnv(mode, process.cwd(), ['VITE_']);
|
|
const isDev = env.VITE_NODE_ENV === 'development';
|
|
|
|
const config = createViteConfig({
|
|
// proxy,
|
|
plugins: [
|
|
createDevTools(),
|
|
isDev && mkcert(),
|
|
AutoImport({
|
|
imports: [
|
|
'vue',
|
|
'pinia',
|
|
'vue-router',
|
|
{
|
|
from: 'pinia',
|
|
imports: ['storeToRefs', 'defineStore'],
|
|
type: true
|
|
}
|
|
],
|
|
dts: 'src/auto-imports.d.ts', // 生成类型声明文件
|
|
eslintrc: {
|
|
enabled: true // 生成 eslint 配置
|
|
}
|
|
})
|
|
]
|
|
});
|
|
return {
|
|
...config,
|
|
server: {
|
|
cors: true,
|
|
https: true,
|
|
port: isDev ? Number(env.VITE_PORT) : undefined,
|
|
host: true
|
|
},
|
|
define: {
|
|
// 注入环境变量到客户端
|
|
__APP_ENV__: JSON.stringify(env)
|
|
}
|
|
};
|
|
});
|