You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

90 lines
3.3 KiB
JavaScript

import {defineConfig} from 'vite'
import vue from '@vitejs/plugin-vue'
import Components from 'unplugin-vue-components/vite'
import AutoImport from 'unplugin-auto-import/vite'
import {ElementPlusResolver} from 'unplugin-vue-components/resolvers'
import path from 'path';
import OptimizationPersist from 'vite-plugin-optimize-persist'
import PkgConfig from 'vite-plugin-package-config'
export default defineConfig({
build: {
outDir: 'PetrolCafeteriaFeeView', // 指定输出路径
},
plugins: [
vue(),
AutoImport({
resolvers: [ElementPlusResolver()],
}), Components({
resolvers: [ElementPlusResolver()],
}),
PkgConfig(),
OptimizationPersist(),
],
base: "./",//打包路径
mode: 'hash',
resolve: {
alias: {
'@': path.resolve(__dirname, './src')//设置别名
}
},
server: {
// open: true,//启动项目自动弹出浏览器
port: 9988,//启动端口
host: "0.0.0.0",
disableHostCheck: true,
cors: true, // 默认启用并允许任何源
// proxy: {
// '/': {
// target: 'http://localhost:9440/',
// changeOrigin: true,
// ws: true,
// rewrite: (path) => path.replace('9988', '9440')
// }
// }
},
css: {
postcss: {
plugins: [
require("postcss-pxtorem")({
rootValue: 190,
propList: ['*', '!border'], // 除 border 外所有px 转 rem
selectorBlackList: ['.loading','.dot','el-'] // 过滤掉.am-开头的class不进行rem转换
})
]
},
},
optimizeDeps: {
include: [
"element-plus/es",
"element-plus/es/components/config-provider/style/css",
"element-plus/es/components/container/style/css",
"element-plus/es/components/main/style/css",
"element-plus/es/components/header/style/css",
"element-plus/es/components/date-picker/style/css",
"element-plus/es/components/drawer/style/css",
"element-plus/es/components/image/style/css",
"element-plus/es/components/image/style/css",
"element-plus/es/components/table/style/css",
"element-plus/es/components/table-column/style/css",
"element-plus/es/components/input/style/css",
"element-plus/es/components/dropdown/style/css",
"element-plus/es/components/popover/style/css",
"element-plus/es/components/dropdown-item/style/css",
"element-plus/es/components/dropdown-menu/style/css",
"element-plus/es/components/pagination/style/css",
"element-plus/es/components/scrollbar/style/css",
"element-plus/es/components/dialog/style/css",
"element-plus/es/components/loading/style/css",
"element-plus/es/components/tabs/style/css",
"element-plus/es/components/tab-pane/style/css",
"element-plus/es/components/select/style/css",
"element-plus/es/components/option/style/css",
"vue",
"sass",
"vue-router",
],
},
})