Skip to content

配置

json
{
  "dependencies": {
    "@vueuse/core": "^9.12.0",
    "@types/node": "^17.0.24",
    
  },
  "devDependencies": {
    "vite-plugin-vue-setup-extend": "^0.4.0",
    "unplugin-auto-import": "^0.7.1",
  }
}

vite.config.ts

ts
plugins: [
    vue(),

    // 使得 setup 文件中可直接使用 name 属性,无需写两个 script 标签
    vueSetupExtend(),

    // 库函数自动导入功能
    autoImport({
      imports: ['vue', 'vue-router', 'pinia', '@vueuse/core'], //  设置自动导入那些库的函数
      include: [
        // 接管那些文件的解析
        /\.[tj]sx?$/, // .ts, .tsx, .js, .jsx
        /\.vue$/, // .vue
      ],
      // ts, eslint 的配置文件内容,会有 autoImport 工具自动生成,无需要程序员自己编写
      dts: './src/types/auto-imports.d.ts', // 自动导入的数据的 ts 声明,使得 ts 能够正确解析
      eslintrc: {
        enabled: true, // 是否开启 eslint 检查
        filepath: './config/.eslintrc-auto-import.json', // 导出 eslint 的配置项,将自动导入的函数,定义为 eslint 的 global 全局变量,解决 eslint 无法识别问题
        globalsPropValue: true, // // 设置全局属性值的类型,开放那些权限,能否重写 (true | false | 'readonly' | 'readable' | 'writable' | 'writeable')
      },
    }),

    dts({
      insertTypesEntry: true,
      copyDtsFiles: false
    })
  ],

取消压缩

json
build: {
  minify: 'terser',  // 使用 terser 而非默认 esbuild
  terserOptions: {
    compress: false,
    mangle: false,
    format: {
      beautify: true,       // 美化输出
      indent_level: 2,      // 缩进级别
      comments: true        // 保留注释
    }
  }
},

erp

json
build: {
      target:['es2015','chrome72'],
      chunkSizeWarningLimit: 15000,
      sourcemap: true,
    },

招聘

json
// 编译超时时间
    build: {
      chunkSizeWarningLimit: 15000,
      sourcemap: true, // 生成代码映射,并保留注释信息
    },

Lucking