Files

76 lines
1.7 KiB
TypeScript
Raw Permalink Normal View History

2025-11-05 16:34:40 +08:00
import { fileURLToPath, URL } from 'node:url'
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import vueJsx from '@vitejs/plugin-vue-jsx'
import vueDevTools from 'vite-plugin-vue-devtools'
import tailwindcss from '@tailwindcss/vite'
2025-11-10 11:07:48 +08:00
import VueRouter from 'unplugin-vue-router/vite'
import { VueRouterAutoImports } from 'unplugin-vue-router'
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { AntDesignVueResolver } from 'unplugin-vue-components/resolvers'
2025-11-05 16:34:40 +08:00
// https://vite.dev/config/
export default defineConfig({
plugins: [
2025-11-10 11:07:48 +08:00
// VueRouter 必须放在 vue() 之前
VueRouter({
routesFolder: 'src/pages',
dts: 'src/typed-router.d.ts',
}),
2025-11-05 16:34:40 +08:00
vue(),
vueJsx(),
vueDevTools(),
tailwindcss(),
2025-11-10 11:07:48 +08:00
// 自动导入 Vue API、VueRouter API 等
AutoImport({
imports: [
'vue',
'pinia',
VueRouterAutoImports,
{
'ant-design-vue': [
'message',
'notification',
'Modal',
],
},
],
dts: 'src/auto-imports.d.ts',
dirs: [
'src/stores',
'src/composables',
],
vueTemplate: true,
}),
// 自动导入组件
Components({
resolvers: [
AntDesignVueResolver({
importStyle: false, // 使用 CSS,不导入 less
}),
],
dts: 'src/components.d.ts',
dirs: ['src/components'],
}),
2025-11-05 16:34:40 +08:00
],
resolve: {
alias: {
'@': fileURLToPath(new URL('./src', import.meta.url))
},
},
2026-03-23 09:46:34 +08:00
server: {
proxy: {
'/api': {
target: 'http://127.0.0.1:9501',
changeOrigin: true,
},
},
},
2025-11-05 16:34:40 +08:00
})