const path = require("path"); function resolve(dir) { return path.join(__dirname, dir); } const serverHost = "http://183.222.39.242:8006" module.exports = { publicPath: "/", outputDir: "dist", assetsDir: "static", lintOnSave: false, //process.env.NODE_ENV === 'development', productionSourceMap: false, devServer: { port: 9528, //open: true, hot: true, overlay: { warnings: false, errors: true }, // webpack devServer 提供了代理的功能 proxy: { // 当地址中有/api的时候会触发代理机制 [process.env.VUE_APP_GATEWAY_API]: { // target: process.env.VUE_APP_GATEWAY_BASE_URL, target: serverHost, // pathRewrite: { "^/api": "" }, changeOrigin: true, // 是否跨域 logLevel: "debug", onProxyReq(proxyReq, req, res) { proxyReq.setHeader( "X-Forwarded-host", process.env.VUE_APP_GATEWAY_HOST ); proxyReq.setHeader("Connection", "Keep-Alive"); //设置长连接 } }, "/mosty-api": { target: serverHost, changeOrigin: true, logLevel: "debug" }, "/data/rec": { target: "http://80.93.24.195:8181", changeOrigin: true, logLevel: "debug", pathRewrite: { "^/data/rec": "/" } }, } }, chainWebpack(config) { // 设置 svg-sprite-loader // config 为 webpack 配置对象 // config.module 表示创建一个具名规则,以后用来修改规则 config.module // 规则 .rule("svg") // 忽略 .exclude.add(resolve("src/icons")) // 结束 .end(); // config.module 表示创建一个具名规则,以后用来修改规则 config.module // 规则 .rule("icons") // 正则,解析 .svg 格式文件 .test(/\.svg$/) // 解析的文件 .include.add(resolve("src/icons")) // 结束 .end() // 新增了一个解析的loader .use("svg-sprite-loader") // 具体的loader .loader("svg-sprite-loader") // loader 的配置 .options({ symbolId: "icon-[name]" }) // 结束 .end(); //更改浏览器标题 config.plugin("html").tap((args) => { args[0].title = "公安"; return args; }); }, css: { loaderOptions: { sass: { prependData: `@import "@/styles/index.scss";` } } } };