代码拉取完成,页面将自动刷新
同步操作将从 王泽伟/Unusual-Admin 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
import { defineConfig, loadEnv } from 'vite'
import { resolve } from 'path'
import { setupPlugins } from './build/plugins/index'
import { conversionsEnv } from './build/utils'
export default defineConfig(({ command, mode }) => {
const isBuild = command === 'build'
const viteEnv: ViteEnv = conversionsEnv(loadEnv(mode, process.cwd()))
const { VITE_PORT, VITE_PUBLIC_PATH, VITE_BASE_API } = viteEnv
return {
base: VITE_PUBLIC_PATH || './',
resolve: {
//设置别名
alias: {
'@': resolve(__dirname, 'src')
}
},
plugins: setupPlugins(isBuild, viteEnv),
server: {
host: true,
port: VITE_PORT, // 启动端口
// 设置代理
proxy: {
[VITE_BASE_API]: {
target: 'http://127.0.0.1:3000',
changeOrigin: true,
rewrite: (path) => path.replace(new RegExp(`^${VITE_BASE_API}`), '')
}
}
},
build: {
reportCompressedSize: false, // 是否开启计算文件大小,项目过大会影响打包效率
minify: 'terser',
// minify: 'esbuild',
sourcemap: !isBuild,
assetsDir: 'static',
// 去除项目中的console.log跟debugger
terserOptions: {
compress: {
drop_console: true,
drop_debugger: true,
}
},
chunkSizeWarningLimit: 1000,
// 打包输出配置
rollupOptions: {
output: {
manualChunks(id: string) {
if (id.includes('node_modules')) {
// return id.toString().split('node_modules/')[1].split('/')[0].toString()
// 如果使用pnpm进行包管理,分包应该这样写,不然会生成一个巨大的.pnpm文件
return id.toString().split('node_modules/')[2].split('/')[0].toString()
}
},
chunkFileNames: 'static/js/[name]-[hash].js',
entryFileNames: 'static/js/[name]-[hash].js',
assetFileNames: 'static/[ext]/[name]-[hash].[ext]'
}
}
}
}
})
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。