Compare commits
No commits in common. '30df2ea8b6d0067b6a618e3731f75cdb45a17804' and 'ace8de18dda9947d03e760681015bf60cf47f1b7' have entirely different histories.
30df2ea8b6
...
ace8de18dd
11 changed files with 175 additions and 139 deletions
@ -1,142 +1,142 @@ |
|||||||
'use strict' |
"use strict"; |
||||||
const path = require('path') |
const path = require("path"); |
||||||
const defaultSettings = require('./src/settings.js') |
const defaultSettings = require("./src/settings.js"); |
||||||
|
|
||||||
function resolve(dir) { |
function resolve(dir) { |
||||||
return path.join(__dirname, dir) |
return path.join(__dirname, dir); |
||||||
} |
} |
||||||
|
|
||||||
const name = defaultSettings.title || '星油能源调度管理平台' |
const name = defaultSettings.title || "星油能源调度管理平台"; |
||||||
const port = 9528 |
const port = 9528; |
||||||
|
|
||||||
module.exports = { |
module.exports = { |
||||||
publicPath: './', |
publicPath: "./", |
||||||
outputDir: 'dist', |
outputDir: "dist", |
||||||
assetsDir: './static', |
assetsDir: "./static", |
||||||
lintOnSave: process.env.NODE_ENV === 'development', |
lintOnSave: process.env.NODE_ENV === "development", |
||||||
productionSourceMap: false, // 改为false可一定程度上解决浏览器f12查看到源码的问题
|
productionSourceMap: false, // 改为false可一定程度上解决浏览器f12查看到源码的问题
|
||||||
devServer: { |
devServer: { |
||||||
disableHostCheck: true, |
disableHostCheck: true, |
||||||
port: port, |
port: port, |
||||||
overlay: { |
overlay: { |
||||||
warnings: false, |
warnings: false, |
||||||
errors: true |
errors: true |
||||||
}, |
}, |
||||||
proxy: { |
proxy: { |
||||||
[process.env.VUE_APP_BASE_API]: { |
[process.env.VUE_APP_BASE_API]: { |
||||||
// target: "http://uat.xingoil.com/adminapi",
|
// target: "http://uat.xingoil.com/adminapi",
|
||||||
// target: 'https://www.xingoil.com/adminapi',
|
// target: 'https://www.xingoil.com/adminapi',
|
||||||
target: `http://192.168.0.22:38080`, |
target: `http://192.168.0.27:38080`, |
||||||
changeOrigin: true, |
changeOrigin: true, |
||||||
pathRewrite: { |
pathRewrite: { |
||||||
['^' + process.env.VUE_APP_BASE_API]: '' |
["^" + process.env.VUE_APP_BASE_API]: "" |
||||||
} |
} |
||||||
}, |
}, |
||||||
[process.env.VUE_APP_UPLOAD_URL]: { |
[process.env.VUE_APP_UPLOAD_URL]: { |
||||||
target: `http://192.168.0.31:38080`, |
target: `http://192.168.0.31:38080`, |
||||||
changeOrigin: true, |
changeOrigin: true, |
||||||
pathRewrite: { |
pathRewrite: { |
||||||
['^' + process.env.VUE_APP_BASE_API]: '' |
["^" + process.env.VUE_APP_BASE_API]: "" |
||||||
|
} |
||||||
|
}, |
||||||
|
[process.env.VUE_APP_BASE_LSM_API]: { |
||||||
|
target: `http://121.41.3.91:8085`, |
||||||
|
changeOrigin: true, |
||||||
|
pathRewrite: { |
||||||
|
["^" + process.env.VUE_APP_BASE_LSM_API]: "" |
||||||
|
} |
||||||
|
} |
||||||
} |
} |
||||||
}, |
}, |
||||||
[process.env.VUE_APP_BASE_LSM_API]: { |
configureWebpack: { |
||||||
target: `http://121.41.3.91:8085`, |
name: name, |
||||||
changeOrigin: true, |
resolve: { |
||||||
pathRewrite: { |
alias: { |
||||||
['^' + process.env.VUE_APP_BASE_LSM_API]: '' |
"@": resolve("src") // 别名。开启后@表示src下目录
|
||||||
|
} |
||||||
|
}, |
||||||
|
externals: { |
||||||
|
"./cptable": "var cptable", |
||||||
|
AMap: "AMap" |
||||||
} |
} |
||||||
} |
|
||||||
} |
|
||||||
}, |
|
||||||
configureWebpack: { |
|
||||||
name: name, |
|
||||||
resolve: { |
|
||||||
alias: { |
|
||||||
'@': resolve('src') // 别名。开启后@表示src下目录
|
|
||||||
} |
|
||||||
}, |
}, |
||||||
externals: { |
chainWebpack(config) { |
||||||
'./cptable': 'var cptable', |
config.plugins.delete("preload"); // TODO: need test
|
||||||
AMap: 'AMap' |
config.plugins.delete("prefetch"); // TODO: need test
|
||||||
} |
config.entry.app = ["babel-polyfill", "./src/main.js"]; |
||||||
}, |
// set svg-sprite-loader
|
||||||
chainWebpack(config) { |
config.module |
||||||
config.plugins.delete('preload') // TODO: need test
|
.rule("svg") |
||||||
config.plugins.delete('prefetch') // TODO: need test
|
.exclude.add(resolve("src/icons")) |
||||||
config.entry.app = ['babel-polyfill', './src/main.js'] |
.end(); |
||||||
// set svg-sprite-loader
|
config.module |
||||||
config.module |
.rule("icons") |
||||||
.rule('svg') |
.test(/\.svg$/) |
||||||
.exclude.add(resolve('src/icons')) |
.include.add(resolve("src/icons")) |
||||||
.end() |
.end() |
||||||
config.module |
.use("svg-sprite-loader") |
||||||
.rule('icons') |
.loader("svg-sprite-loader") |
||||||
.test(/\.svg$/) |
.options({ |
||||||
.include.add(resolve('src/icons')) |
symbolId: "icon-[name]" |
||||||
.end() |
}) |
||||||
.use('svg-sprite-loader') |
.end(); |
||||||
.loader('svg-sprite-loader') |
|
||||||
.options({ |
|
||||||
symbolId: 'icon-[name]' |
|
||||||
}) |
|
||||||
.end() |
|
||||||
|
|
||||||
if (process.env.use_analyzer) { |
if (process.env.use_analyzer) { |
||||||
// 分析
|
// 分析
|
||||||
config |
config |
||||||
.plugin('webpack-bundle-analyzer') |
.plugin("webpack-bundle-analyzer") |
||||||
.use(require('webpack-bundle-analyzer').BundleAnalyzerPlugin) |
.use(require("webpack-bundle-analyzer").BundleAnalyzerPlugin); |
||||||
} |
} |
||||||
|
|
||||||
// set preserveWhitespace
|
// set preserveWhitespace
|
||||||
config.module |
config.module |
||||||
.rule('vue') |
.rule("vue") |
||||||
.use('vue-loader') |
.use("vue-loader") |
||||||
.loader('vue-loader') |
.loader("vue-loader") |
||||||
.tap(options => { |
.tap(options => { |
||||||
options.compilerOptions.preserveWhitespace = true |
options.compilerOptions.preserveWhitespace = true; |
||||||
return options |
return options; |
||||||
}) |
}) |
||||||
.end() |
.end(); |
||||||
|
|
||||||
config |
config; |
||||||
// https://webpack.js.org/configuration/devtool/#development.when(process.env.NODE_ENV === 'development', config => config.devtool('cheap-source-map'))
|
// https://webpack.js.org/configuration/devtool/#development.when(process.env.NODE_ENV === 'development', config => config.devtool('cheap-source-map'))
|
||||||
|
|
||||||
config.when(process.env.NODE_ENV !== 'development', config => { |
config.when(process.env.NODE_ENV !== "development", config => { |
||||||
config |
config |
||||||
.plugin('ScriptExtHtmlWebpackPlugin') |
.plugin("ScriptExtHtmlWebpackPlugin") |
||||||
.after('html') |
.after("html") |
||||||
.use('script-ext-html-webpack-plugin', [ |
.use("script-ext-html-webpack-plugin", [ |
||||||
{ |
{ |
||||||
// `runtime` must same as runtimeChunk name. default is `runtime`
|
// `runtime` must same as runtimeChunk name. default is `runtime`
|
||||||
inline: /runtime\..*\.js$/ |
inline: /runtime\..*\.js$/ |
||||||
} |
} |
||||||
]) |
]) |
||||||
.end() |
.end(); |
||||||
config.optimization.splitChunks({ |
config.optimization.splitChunks({ |
||||||
chunks: 'all', |
chunks: "all", |
||||||
cacheGroups: { |
cacheGroups: { |
||||||
libs: { |
libs: { |
||||||
name: 'chunk-libs', |
name: "chunk-libs", |
||||||
test: /[\\/]node_modules[\\/]/, |
test: /[\\/]node_modules[\\/]/, |
||||||
priority: 10, |
priority: 10, |
||||||
chunks: 'initial' // only package third parties that are initially dependent
|
chunks: "initial" // only package third parties that are initially dependent
|
||||||
}, |
}, |
||||||
elementUI: { |
elementUI: { |
||||||
name: 'chunk-elementUI', // split elementUI into a single package
|
name: "chunk-elementUI", // split elementUI into a single package
|
||||||
priority: 20, // the weight needs to be larger than libs and app or it will be packaged into libs or app
|
priority: 20, // the weight needs to be larger than libs and app or it will be packaged into libs or app
|
||||||
test: /[\\/]node_modules[\\/]_?element-ui(.*)/ // in order to adapt to cnpm
|
test: /[\\/]node_modules[\\/]_?element-ui(.*)/ // in order to adapt to cnpm
|
||||||
}, |
}, |
||||||
commons: { |
commons: { |
||||||
name: 'chunk-commons', |
name: "chunk-commons", |
||||||
test: resolve('src/components'), // can customize your rules
|
test: resolve("src/components"), // can customize your rules
|
||||||
minChunks: 3, // minimum common number
|
minChunks: 3, // minimum common number
|
||||||
priority: 5, |
priority: 5, |
||||||
reuseExistingChunk: true |
reuseExistingChunk: true |
||||||
} |
} |
||||||
} |
} |
||||||
}) |
}); |
||||||
config.optimization.runtimeChunk('single') |
config.optimization.runtimeChunk("single"); |
||||||
}) |
}); |
||||||
} |
} |
||||||
} |
}; |
||||||
|
Loading…
Reference in new issue