98 lines
2.4 KiB
JavaScript
98 lines
2.4 KiB
JavaScript
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";`
|
|
}
|
|
}
|
|
}
|
|
};
|