图标用 unplugin-icons 在打包时内联成 SVG,运行时不发网络请求——目标机器可能没外网, 而且一个图标一次请求对 2 核的机器不划算。autoInstall 关掉,不让构建过程偷偷联网装东西。 出站显示从「跟着规则走」改成 RULE,其余解释性长句删掉或收进 title。 新增了紧凑模式(只显示图标),默认关:这工具是隔一阵子才动一次的,纯图标对偶尔来的人不友好。
39 lines
1.1 KiB
TypeScript
39 lines
1.1 KiB
TypeScript
import { defineConfig } from 'vite'
|
|
import vue from '@vitejs/plugin-vue'
|
|
import Icons from 'unplugin-icons/vite'
|
|
import { fileURLToPath, URL } from 'node:url'
|
|
|
|
/**
|
|
* 开发时前端跑在 5173,后端跑在 7580,接口请求转发过去。
|
|
* 打包后前端是纯静态文件,由后端一起提供,不存在跨域问题。
|
|
*/
|
|
export default defineConfig({
|
|
root: 'web',
|
|
plugins: [
|
|
vue(),
|
|
// 图标在打包时作为内联 SVG 编进产物,运行时不发任何网络请求——
|
|
// 目标机器可能没有外网,而且一个图标一次请求对 2 核的机器也不划算。
|
|
// autoInstall 关掉:要用哪套图标必须显式装进 package.json,不让构建过程偷偷联网。
|
|
Icons({ compiler: 'vue3', autoInstall: false }),
|
|
],
|
|
resolve: {
|
|
alias: {
|
|
'~': fileURLToPath(new URL('./web', import.meta.url)),
|
|
'@shared': fileURLToPath(new URL('./shared', import.meta.url)),
|
|
},
|
|
},
|
|
server: {
|
|
port: 5173,
|
|
proxy: {
|
|
'/api': {
|
|
target: 'http://127.0.0.1:7580',
|
|
changeOrigin: false,
|
|
},
|
|
},
|
|
},
|
|
build: {
|
|
outDir: '../web-dist',
|
|
emptyOutDir: true,
|
|
},
|
|
})
|