| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- 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 { resolve } from 'path'
- // https://vitejs.dev/config/
- // https://tauri.app/start/frontend/vite/
- export default defineConfig({
- plugins: [
- vue(),
- AutoImport({
- imports: ['vue', 'vue-i18n', 'pinia'],
- resolvers: [ElementPlusResolver()],
- dts: 'src/auto-imports.d.ts'
- }),
- Components({
- resolvers: [ElementPlusResolver()],
- dts: 'src/components.d.ts'
- })
- ],
- resolve: {
- alias: {
- '@': resolve(__dirname, 'src'),
- '@shared': resolve(__dirname, 'shared')
- }
- },
- css: {
- preprocessorOptions: {
- scss: {
- api: 'modern-compiler',
- additionalData: `@use "@/styles/variables.scss" as *;`
- }
- }
- },
- // Vite options tailored for Tauri development
- clearScreen: false,
- server: {
- port: 5173,
- strictPort: true,
- watch: {
- // 告诉 vite 忽略监视 src-tauri 目录
- ignored: ['**/src-tauri/**']
- }
- },
- // 生产环境配置
- build: {
- outDir: 'dist',
- emptyOutDir: true,
- // Tauri 使用 Chromium on Windows 和 WebKit on macOS/Linux
- target: process.env.TAURI_ENV_PLATFORM === 'windows' ? 'chrome105' : 'safari13',
- // 在 debug 构建时不压缩
- minify: !process.env.TAURI_ENV_DEBUG ? 'esbuild' : false,
- // 在 debug 构建时生成 sourcemap
- sourcemap: !!process.env.TAURI_ENV_DEBUG
- },
- // 环境变量前缀
- envPrefix: ['VITE_', 'TAURI_ENV_']
- })
|