This commit is contained in:
xiaozhiyong
2023-05-12 14:21:04 +08:00
parent c3c3d61b92
commit ad818c11c8

View File

@@ -1,17 +1,17 @@
"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 || "vue Admin Template"; const name = defaultSettings.title || 'vue Admin Template'
module.exports = { module.exports = {
publicPath: "/refinery", publicPath: '/refinery',
outputDir: "dist", outputDir: 'dist',
assetsDir: "static", assetsDir: 'static',
productionSourceMap: false, productionSourceMap: false,
devServer: { devServer: {
inline: true, inline: true,
@@ -19,7 +19,7 @@ module.exports = {
open: false, open: false,
overlay: { overlay: {
warnings: false, warnings: false,
errors: true, errors: true
}, },
disableHostCheck: true, disableHostCheck: true,
// before: require('./mock/mock-server.js'), // before: require('./mock/mock-server.js'),
@@ -27,97 +27,97 @@ module.exports = {
[process.env.VUE_APP_BASE_API]: { [process.env.VUE_APP_BASE_API]: {
// target: `https://3816t6291y.oicp.vip`, // target: `https://3816t6291y.oicp.vip`,
// target: 'https://6l438d1757.zicp.fun', // target: 'https://6l438d1757.zicp.fun',
target: "http://192.168.1.85:38080", target: 'http://192.168.1.85:38080',
// target: "http://uat.xingoil.com/adminapi", // target: "http://uat.xingoil.com/adminapi",
changeOrigin: true, changeOrigin: true,
pathRewrite: { pathRewrite: {
["^" + process.env.VUE_APP_BASE_API]: "", ['^' + process.env.VUE_APP_BASE_API]: ''
}, }
}, }
}, }
}, },
configureWebpack: { configureWebpack: {
name: name, name: name,
resolve: { resolve: {
alias: { alias: {
"@": resolve("src"), '@': resolve('src'),
api: resolve("src/api"), api: resolve('src/api'),
utils: resolve("src/utils"), utils: resolve('src/utils'),
views: resolve("src/views"), views: resolve('src/views'),
assets: resolve("src/assets"), assets: resolve('src/assets'),
components: resolve("src/components"), components: resolve('src/components')
}, }
}, }
}, },
chainWebpack(config) { chainWebpack(config) {
config.plugin("preload").tap(() => [ config.plugin('preload').tap(() => [
{ {
rel: "preload", rel: 'preload',
fileBlacklist: [/\.map$/, /hot-update\.js$/, /runtime\..*\.js$/], fileBlacklist: [/\.map$/, /hot-update\.js$/, /runtime\..*\.js$/],
include: "initial", include: 'initial'
}, }
]);
config.plugins.delete("prefetch");
config.module.rule("svg").exclude.add(resolve("src/icons")).end();
config.module
.rule("icons")
.test(/\.svg$/)
.include.add(resolve("src/icons"))
.end()
.use("svg-sprite-loader")
.loader("svg-sprite-loader")
.options({
symbolId: "icon-[name]",
})
.end();
config.module
.rule("vue")
.use("vue-loader")
.loader("vue-loader")
.tap((options) => {
options.compilerOptions.preserveWhitespace = true;
return options;
})
.end();
config.when(process.env.NODE_ENV !== "development", (config) => {
config
.plugin("ScriptExtHtmlWebpackPlugin")
.after("html")
.use("script-ext-html-webpack-plugin", [
{
inline: /runtime\..*\.js$/,
},
]) ])
.end();
config.plugins.delete('prefetch')
config.module.rule('svg').exclude.add(resolve('src/icons')).end()
config.module
.rule('icons')
.test(/\.svg$/)
.include.add(resolve('src/icons'))
.end()
.use('svg-sprite-loader')
.loader('svg-sprite-loader')
.options({
symbolId: 'icon-[name]'
})
.end()
config.module
.rule('vue')
.use('vue-loader')
.loader('vue-loader')
.tap(options => {
options.compilerOptions.preserveWhitespace = true
return options
})
.end()
config.when(process.env.NODE_ENV !== 'development', config => {
config
.plugin('ScriptExtHtmlWebpackPlugin')
.after('html')
.use('script-ext-html-webpack-plugin', [
{
inline: /runtime\..*\.js$/
}
])
.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", chunks: 'initial'
}, },
elementUI: { elementUI: {
name: "chunk-elementUI", name: 'chunk-elementUI',
priority: 20, priority: 20,
test: /[\\/]node_modules[\\/]_?element-ui(.*)/, test: /[\\/]node_modules[\\/]_?element-ui(.*)/
}, },
commons: { commons: {
name: "chunk-commons", name: 'chunk-commons',
test: resolve("src/components"), test: resolve('src/components'),
minChunks: 3, minChunks: 3,
priority: 5, priority: 5,
reuseExistingChunk: true, reuseExistingChunk: true
}
}
})
config.optimization.runtimeChunk('single')
})
}, },
}, lintOnSave: false
}); }
config.optimization.runtimeChunk("single");
});
},
lintOnSave: false,
};