poster-design/vite.config.ts

86 lines
1.9 KiB
TypeScript
Raw Normal View History

2023-07-18 07:03:15 +00:00
/*
* @Author: ShawnPhang
* @Date: 2021-08-19 18:30:38
* @Description: Vite配置文件
* @LastEditors: ShawnPhang <site: book.palxp.com>
* @LastEditTime: 2023-07-15 15:31:49
*/
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import path from 'path'
import viteCompression from 'vite-plugin-compression'
import ElementPlus from 'unplugin-element-plus/vite'
const resolve = (...data: string[]) => path.resolve(__dirname, ...data)
// https://vitejs.dev/config/
export default defineConfig({
// base: '/web',
plugins: [
vue(),
viteCompression({
verbose: true,
disable: false,
threshold: 10240,
algorithm: 'gzip',
ext: '.gz',
}),
ElementPlus({
// options
}),
// styleImport({
// libs: [
// {
// libraryName: 'element-plus',
// esModule: true,
// ensureStyleFile: true,
// resolveStyle: (name) => {
// name = name.slice(3)
// return `element-plus/packages/theme-chalk/src/${name}.scss`
// },
// resolveComponent: (name) => {
// return `element-plus/lib/${name}`
// },
// },
// ],
// }),
],
build: {
minify: 'terser',
terserOptions: {
compress: {
drop_console: true,
drop_debugger: true,
},
},
},
resolve: {
alias: {
'@': resolve('src'),
'~data': resolve('src/assets/data'),
},
},
css: {
preprocessorOptions: {
less: {
modifyVars: {
color: `true; @import "./src/assets/styles/color.less";`,
},
},
},
},
define: {
'process.env': process.env,
},
server: {
hmr: { overlay: false },
// proxy: {
// '/api': {
// target: 'https://rmt-design-dev.imp360.cn/api/',
// changeOrigin: true,
// rewrite: (path) => path.replace(/^\/api/, ''),
// },
// },
},
})