AIzhushou-screen/vite.config.ts

67 lines
1.7 KiB
TypeScript

import type { UserConfig, ConfigEnv } from 'vite';
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { resolve } from "path";
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
//https://github.com/element-plus/unplugin-element-plus/blob/HEAD/README.zh-CN.md
import ElementPlus from 'unplugin-element-plus/vite'
export default defineConfig(({ command, mode }: ConfigEnv): UserConfig => {
// const env = loadEnv(mode, process.cwd(), '')
console.log(command, mode);
return {
plugins: [vue(),
AutoImport({
resolvers: [ElementPlusResolver()],
include: [
/\.[tj]sx?$/,
/\.vue$/,
/\.vue\?vue/,
/\.md$/,
],
imports: ['vue','vue-router', 'pinia', '@vueuse/core'],
//注意这个配置和src同级
dts: './auto-imports.d.ts'
}),
Components({
resolvers: [ElementPlusResolver()],
}),
ElementPlus({
// useSource: true
})
],
publicDir: "public",
base: "/largeScreen/",
server: {
host: '0.0.0.0',
port: 9527,
open: false,
strictPort: false,
// proxy: {}
},
resolve: {
alias: {
"@": resolve(__dirname, "./src"),
"components": resolve(__dirname, "./src/components"),
"api": resolve(__dirname, "./src/api"),
},
},
css: {
// css预处理器
preprocessorOptions: {
scss: {
// charset: false,
additionalData: `@use "./src/assets/css/variable.scss" as *;`,
},
},
},
build: {
outDir: 'dist',
},
}
})