139 lines
3.9 KiB
JavaScript
139 lines
3.9 KiB
JavaScript
const path = require("path")
|
|
function resolve(dir) {
|
|
return path.join(__dirname, dir)
|
|
}
|
|
/**
|
|
* 修改serverHost时记得同时将main.js里面的serverHost也改一下
|
|
*/
|
|
// const serverHost = "http://192.168.3.113:8006"; // 石:3.113 46:石wifi
|
|
const localHost = "http://192.168.1.4:8056";
|
|
// const serverHost = "http://10.52.28.184:9328"; // 1.4 石 1.11嘉陵 1.15
|
|
const serverHost = "http://192.168.1.4:8056"; // 1.4 石 1.11嘉陵 1.15
|
|
// const serverHost = "http://192.168.1.115:8006";
|
|
// const serverHost = "http://183.222.39.242:8006";
|
|
// https://cli.vuejs.org/zh/guide/webpack.html#%E7%AE%80%E5%8D%95%E7%9A%84%E9%85%8D%E7%BD%AE%E6%96%B9%E5%BC%8F
|
|
// export function getserverHost() {
|
|
// setItem('serverHost', serverHost);
|
|
// }
|
|
module.exports = {
|
|
publicPath: "/",
|
|
outputDir: "pc", // 设置打包成 pc 文件夹,后压缩成 pc.zip
|
|
assetsDir: "static",
|
|
lintOnSave: false, //process.env.NODE_ENV === 'development',
|
|
productionSourceMap: false,
|
|
devServer: {
|
|
port: 9535, //
|
|
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") //设置长连接
|
|
}
|
|
},
|
|
"/serverHost": {
|
|
target: serverHost,
|
|
changeOrigin: true,
|
|
logLevel: "debug"
|
|
},
|
|
// "/mosty-wljc": {
|
|
// target: localHost,
|
|
// changeOrigin: true,
|
|
// logLevel: "debug"
|
|
// },
|
|
"/mosty-platform": {
|
|
target: serverHost,
|
|
changeOrigin: true,
|
|
logLevel: "debug"
|
|
}
|
|
,
|
|
"/mosty-api": {
|
|
target: serverHost,
|
|
changeOrigin: true,
|
|
logLevel: "debug"
|
|
}
|
|
}
|
|
},
|
|
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
|
|
})
|
|
config.plugin("define").tap(definitions => {
|
|
Object.assign(definitions[0], {
|
|
__VUE_OPTIONS_API__: "true",
|
|
__VUE_PROD_DEVTOOLS__: "false",
|
|
__VUE_PROD_HYDRATION_MISMATCH_DETAILS__: "false"
|
|
})
|
|
return definitions
|
|
})
|
|
},
|
|
|
|
css: {
|
|
loaderOptions: {
|
|
sass: {
|
|
prependData: `@import "@/styles/index.scss";`
|
|
}
|
|
},
|
|
extract: {
|
|
ignoreOrder: true
|
|
}
|
|
},
|
|
// qrcodeImg(ruleForm) { },
|
|
// externals: {
|
|
// './cptable': 'var cptable'
|
|
// },
|
|
configureWebpack: {
|
|
externals: { "./cptable": "var cptable" },
|
|
devtool: "cheap-module-source-map",
|
|
resolve: {
|
|
alias: {
|
|
"@": path.resolve(__dirname, "./src") // 确保路径正确
|
|
}
|
|
}
|
|
} // 配置webpack的字段。
|
|
}
|