123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
- import vue from '@vitejs/plugin-vue'; //提供 Vue 3 单文件组件支持
- import PkgConfig from "vite-plugin-package-config";
- import OptimizationPersist from "vite-plugin-optimize-persist";
- import path from 'path';
- import inject from '@rollup/plugin-inject'; // 必须重要!效果和webpack.ProvidePlugin中相同
- import {
- defineConfig,
- loadEnv
- } from 'vite'; // 帮手函数,这样不用 jsdoc 注解也可以获取类型提示
- export default defineConfig(({
- mode,
- command
- }) => {
- const root = process.cwd()
- // 获取 .env 文件里定义的环境变量
- const env = loadEnv(mode, root)
- debugger
- const {
- VITE_APP_ENV
- } = env;
- console.log(`当前环境信息:`, mode)
- console.log(`ENV:`, env)
- return {
- plugins: [
- vue(),
- PkgConfig(),
- OptimizationPersist(),
- // inject({//导致加载慢,和cesium引用一样,放到index.html
- // $: "jquery", // 这里会自动载入 node_modules 中的 jquery jquery全局变量
- // jQuery: "jquery",
- // "windows.jQuery": "jquery"
- // })
- ],
- // 部署生产环境和开发环境下的URL。
- // 默认情况下,vite 会假设你的应用是被部署在一个域名的根路径上,例如 https://www.ruoyi.vip/。
- // 如果应用被部署在一个子路径上,你就需要用这个选项指定这个子路径。例如,如果你的应用被部署在 https://www.ruoyi.vip/admin/,则设置 baseUrl 为 /admin/。
- // base: './',
- // base: VITE_APP_ENV === 'development' ? '/' : './',
- base: VITE_APP_ENV === 'development' ? '/' : '/sdjt/',
- resolve: {
- alias: {
- // 设置别名
- '@': path.resolve(__dirname, './src')
- },
- //导入时想要省略的扩展名列表
- extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json']
- },
- // 强制预构建插件包
- optimizeDeps: {
- //检测需要预构建的依赖项
- entries: [],
- //默认情况下,不在 node_modules 中的,链接的包不会预构建
- include: ["@/common/store/widget"],
- exclude: [] //排除在优化之外
- },
- /* 全局变量 */
- css: {
- // 指定传递给 CSS 预处理器的选项
- preprocessorOptions: {
- scss: {
- additionalData: '@use "@/assets/styles/variables.scss" as *;'
- },
- },
- },
- /* 服务器配置 */
- server: {
- /* 端口 */
- port: 3000,
- /* 地址 */
- host: "0.0.0.0",
- /* 编译后是否打开浏览器 */
- open: true,
- /* 是否开启https */
- https: false,
- },
- /* 打包配置 */
- build: {
- /**
- * 设置最终构建的浏览器兼容目标。默认值是一个 Vite 特有的值——'modules',这是指 支持原生 ES 模块的浏览器。
- */
- target: 'modules',
- /**
- * 指定输出路径(相对于 项目根目录).
- * @default 'dist'
- */
- outDir: "dist",
- /**
- * 启用/禁用 CSS 代码拆分
- */
- cssCodeSplit: true,
- /**
- * 混淆器,terser构建后文件体积更小
- */
- minify: 'terser', // 混淆器,terser构建后文件体积更小
- chunkSizeWarningLimit: 4500,
- // 自定义rollup-commonjs插件选项
- commonjsOptions: {
- include: /node_modules|packages|src\/common\/store/
- },
- // 自定义底层的 Rollup 打包配置
- rollupOptions: {
- },
- },
- };
- });
|