module.exports = { publicPath: process.env.VUE_APP_PUB_URL, assetsDir: process.env.NODE_ENV === "production" ? "static" + new Date().toLocaleDateString().replace(/\//g, "-") : "static", productionSourceMap: false, devServer: { // * 接口跨域处理 proxy: { "/api": { target: process.env.PROXY_API_URL, changeOrigin: true, }, }, disableHostCheck: true, }, css: { sourceMap: false, loaderOptions: { scss: { prependData: `@import "~@/scss/variables.scss";`, }, less: { lessOptions: { modifyVars: { "primary-color": "#39a4ff", "link-color": "#39a4ff", }, javascriptEnabled: true, }, }, }, }, configureWebpack: { resolve: { extensions: [".js", ".vue", ".json", ".ts"], }, }, chainWebpack: (config) => { // * 移除prefetch和preload config.plugins.delete("prefetch"); config.plugins.delete("preload"); if (process.env.NODE_ENV === "production") { // config.entry("index").add("babel-polyfill"); config.plugin("html").tap((args) => { // 加上属性引号 args[0].minify.removeAttributeQuotes = false; // args[0].cdn = cdns.build; return args; }); } }, };