From a195c7959a9ce49cabfd94778731666ae0388d58 Mon Sep 17 00:00:00 2001 From: zhujiyan <17812234322@163.com> Date: Tue, 27 Aug 2024 14:37:26 +0800 Subject: [PATCH] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/vite.config.ts | 67 +++++++++++++++++++++++------------------ 1 file changed, 37 insertions(+), 30 deletions(-) diff --git a/frontend/vite.config.ts b/frontend/vite.config.ts index f188703..787f927 100644 --- a/frontend/vite.config.ts +++ b/frontend/vite.config.ts @@ -1,45 +1,52 @@ -import { defineConfig, loadEnv, ConfigEnv, UserConfig } from 'vite' -import { createSvgIconsPlugin } from 'vite-plugin-svg-icons' -import vue from '@vitejs/plugin-vue' -import path from 'path' -import { wrapperEnv } from './build/getEnv' -import { createProxy } from './build/proxy' - -import AutoImport from 'unplugin-auto-import/vite' -import Components from 'unplugin-vue-components/vite' -import { ElementPlusResolver } from 'unplugin-vue-components/resolvers' +import { defineConfig, loadEnv, ConfigEnv, UserConfig } from "vite"; +import { createSvgIconsPlugin } from "vite-plugin-svg-icons"; +import vue from "@vitejs/plugin-vue"; +import path from "path"; +import { wrapperEnv } from "./build/getEnv"; +import { createProxy } from "./build/proxy"; +// 导入 +import vueJsx from "@vitejs/plugin-vue-jsx"; +import AutoImport from "unplugin-auto-import/vite"; +import Components from "unplugin-vue-components/vite"; +import { ElementPlusResolver } from "unplugin-vue-components/resolvers"; export default defineConfig(({ mode }: ConfigEnv): UserConfig => { - const root = process.cwd() - const env = loadEnv(mode, root) - const viteEnv = wrapperEnv(env) + const root = process.cwd(); + const env = loadEnv(mode, root); + const viteEnv = wrapperEnv(env); return { plugins: [ vue(), // svg图标配置,可以使用svg图标 createSvgIconsPlugin({ - iconDirs: [path.resolve(process.cwd(), 'src/assets/icons')], - symbolId: 'icon-[dir]-[name]', + iconDirs: [path.resolve(process.cwd(), "src/assets/icons")], + symbolId: "icon-[dir]-[name]", }), AutoImport({ - resolvers: [ElementPlusResolver({ - importStyle: 'sass', - })], + resolvers: [ + ElementPlusResolver({ + importStyle: "sass", + }), + ], }), Components({ - resolvers: [ElementPlusResolver({ - importStyle: 'sass', - })], + resolvers: [ + ElementPlusResolver({ + importStyle: "sass", + }), + ], }), + // 增加此行代码 + vueJsx(), ], // 基础配置 base: viteEnv.VITE_PUBLIC_PATH, root, - publicDir: 'public', + publicDir: "public", resolve: { alias: { - '@': path.resolve(__dirname, 'src'), - 'vue-i18n': 'vue-i18n/dist/vue-i18n.cjs.js', + "@": path.resolve(__dirname, "src"), + "vue-i18n": "vue-i18n/dist/vue-i18n.cjs.js", }, }, css: { @@ -50,12 +57,12 @@ export default defineConfig(({ mode }: ConfigEnv): UserConfig => { }, }, build: { - outDir: 'dist', - assetsDir: 'assets', + outDir: "dist", + assetsDir: "assets", assetsInlineLimit: 4096, cssCodeSplit: true, sourcemap: false, - minify: 'terser', + minify: "terser", terserOptions: { compress: { // 生产环境去除console及debug @@ -65,11 +72,11 @@ export default defineConfig(({ mode }: ConfigEnv): UserConfig => { }, }, server: { - host: '0.0.0.0', + host: "0.0.0.0", port: viteEnv.VITE_PORT, open: viteEnv.VITE_OPEN, cors: true, proxy: createProxy(viteEnv.VITE_PROXY), }, - } -}) + }; +});