diff --git a/src/app.vue b/src/app.vue
index 14f99dd..7ed9219 100644
--- a/src/app.vue
+++ b/src/app.vue
@@ -1,5 +1,8 @@
@@ -11,4 +14,4 @@
\ No newline at end of file
+
diff --git a/vite.config.ts b/vite.config.ts
index bf44cf8..446406f 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -1,69 +1,72 @@
-import {defineConfig} from "vite";
-import vue from "@vitejs/plugin-vue";
-import AutoImport from 'unplugin-auto-import/vite';
-import { ElementPlusResolver } from 'unplugin-vue-components/resolvers';
-import viteCompression from 'vite-plugin-compression';
-import { resolve } from 'path';
+import { resolve } from 'node:path'
+import vue from '@vitejs/plugin-vue'
+import AutoImport from 'unplugin-auto-import/vite'
+import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
+import { defineConfig } from 'vite'
+import viteCompression from 'vite-plugin-compression'
+import eslintPlugin from 'vite-plugin-eslint'
-const Timestamp = new Date().getTime();
+const Timestamp = new Date().getTime()
export default defineConfig({
- base: "./",
- envPrefix:"FT_",
+ base: './',
+ envPrefix: 'FT_',
build: {
sourcemap: false,
rollupOptions: {
output: {
manualChunks(id) {
if (id.includes('node_modules')) {
- return id.toString().split('node_modules/')[1].split('/')[0].toString();
+ return id.toString().split('node_modules/')[1].split('/')[0].toString()
}
},
- chunkFileNames: chunkInfo => {
+ chunkFileNames: (chunkInfo) => {
const facadeModuleId = chunkInfo.facadeModuleId
- ? chunkInfo.facadeModuleId.split('/')
- : [];
- const fileName = facadeModuleId.slice(-2)[0] || '[name]';
- return `js/${fileName}/[name].[hash].${Timestamp}.js`;
- }
- }
- }
+ ? chunkInfo.facadeModuleId.split('/')
+ : []
+ const fileName = facadeModuleId.slice(-2)[0] || '[name]'
+ return `js/${fileName}/[name].[hash].${Timestamp}.js`
+ },
+ },
+ },
},
plugins: [
- vue(),
+ vue(),
AutoImport({
imports: ['vue', 'vue-router', {
- 'vue': ['withModifiers']
- },
- {
- from: 'element-plus/es',
- imports: ['TabPaneName'],
- type: true,
- },],
+ vue: ['withModifiers'],
+ }, {
+ from: 'element-plus/es',
+ imports: ['TabPaneName'],
+ type: true,
+ }],
dts: true,
eslintrc: {
- enabled: true
+ enabled: true,
},
- resolvers: [ElementPlusResolver({ importStyle: 'sass' })]
+ resolvers: [ElementPlusResolver({ importStyle: 'sass' })],
+ }),
+ eslintPlugin({
+ cache: false, // 禁用缓存,以确保每次修改后都能及时生效
}),
viteCompression({
verbose: true,
disable: false,
threshold: 10240,
algorithm: 'gzip',
- ext: '.gz'
- })
+ ext: '.gz',
+ }),
],
resolve: {
alias: {
'@': resolve(__dirname, 'src'),
- apis: resolve(__dirname, 'src/apis'),
- assets: resolve(__dirname, 'src/assets'),
- components: resolve(__dirname, 'src/components'),
- hooks: resolve(__dirname, 'src/hooks'),
- libs: resolve(__dirname, 'src/libs'),
- store: resolve(__dirname, 'src/store'),
- views: resolve(__dirname, 'src/views'),
- }
+ 'apis': resolve(__dirname, 'src/apis'),
+ 'assets': resolve(__dirname, 'src/assets'),
+ 'components': resolve(__dirname, 'src/components'),
+ 'hooks': resolve(__dirname, 'src/hooks'),
+ 'libs': resolve(__dirname, 'src/libs'),
+ 'store': resolve(__dirname, 'src/store'),
+ 'views': resolve(__dirname, 'src/views'),
+ },
},
// 本地化配置
server: {
@@ -75,9 +78,9 @@ export default defineConfig({
'/api': {
target: 'http://localhost:8080',
// secure: false,
- changeOrigin: true, //是否跨域
- rewrite: path => path.replace(/^\/api/, 'api')
- }
- }
- }
-});
+ changeOrigin: true, // 是否跨域
+ rewrite: path => path.replace(/^\/api/, 'api'),
+ },
+ },
+ },
+})