代码拉取完成,页面将自动刷新
同步操作将从 陈俊浩/vue3最佳实践 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
import {
loadEnv, ConfigEnv, UserConfigExport,
} from 'vite';
import vue from '@vitejs/plugin-vue';
import { resolve } from 'path';
import viteSvgIcons from 'vite-plugin-svg-icons';
import Components from 'unplugin-vue-components/vite';
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers';
const envResolve = (mode: string, env: string) => loadEnv(mode, process.cwd())[env];
export default ({ command, mode }: ConfigEnv): UserConfigExport => {
console.log('🚀 ~ process.env.NODE_ENV ~ 打包路径:', envResolve(mode, 'VITE_APP_BASE_PATH'));
return {
css: {
preprocessorOptions: {
less: {
modifyVars: {
hack: `true; @import (reference) "${resolve('src/assets/style/config.less')}";`,
},
javascriptEnabled: true,
},
},
},
plugins: [
vue(),
viteSvgIcons({
// 配置路径在你的src里的svg存放文件
iconDirs: [resolve(process.cwd(), 'src/assets/icons')],
symbolId: 'icon-[dir]-[name]',
}),
Components({
resolvers: [ElementPlusResolver()],
}),
],
resolve: {
alias: {
'@': resolve(__dirname, 'src'), // 设置 `@` 指向 `src` 目录
'@comp': resolve(__dirname, 'src/components'),
},
},
// base: './', // 设置打包路径
base: process.env.NODE_ENV === 'production' ? envResolve(mode, 'VITE_APP_BASE_PATH') : './', // 设置打包路径
server: {
port: 4000, // 设置服务启动端口号
open: true, // 设置服务启动时是否自动打开浏览器
cors: true, // 允许跨域
hmr: true,
},
build: {
rollupOptions: {
output: {
// eslint-disable-next-line consistent-return
manualChunks(id) {
// 将pinia的全局库实例打包进vendor,避免和页面一起打包造成资源重复引入
if (id.includes(resolve('src/store/index.ts'))) {
return 'vendor';
}
},
},
},
},
};
};
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。