// const { defineConfig } = require("@vue/cli-service") // module.exports = defineConfig({ // transpileDependencies: true // }) const path = require("path") const getServerJson = require("./public/serverconfig") const devServer = require("./vue.develop.config") const { context } = getServerJson function resolve(dir) { return path.join(__dirname, dir) } module.exports = { publicPath: context, lintOnSave: false, productionSourceMap: false, // 如果你不需要生产环境的source map, 可以将其设置为false 以加速生产环境构建 devServer, transpileDependencies: [ // 兼容IE11浏览器(兼容npm包和cnpm包) "crypto-js", "sockjs-client" ], configureWebpack: (config) => { if (process.env.NODE_ENV === "production") { // 为生产环境修改配置 config.optimization.minimizer[0].options.terserOptions.compress.warings = false config.optimization.minimizer[0].options.terserOptions.compress.drop_console = true config.optimization.minimizer[0].options.terserOptions.compress.drop_debugger = true config.optimization.minimizer[0].options.terserOptions.compress.pure_funcs = ["console.log"] config.performance = { hints: "warning", maxEntrypointSize: 20000000, // 入口起点的最大体积 maxAssetSize: 10000000 // 生成文件的最大体积 } } else { // 为开发环境修改配置 config.devtool = "eval-source-map" } }, chainWebpack(config) { // 设置svg导入 config.module.rule("svg").exclude.add(resolve("srv/assets/icons")).end() config.module .rule("icons") .test(/\.svg$/) .include.add(resolve("src/assets/icons")) .end() .use("svg-sprite-loader") .loader("svg-sprite-loader") .options({ symbolId: "icon-[name]" }) .end() } }