const { defineConfig } = require("@vue/cli-service");
|
const webpack = require("webpack");
|
// 获取所有书籍列表
|
const bookList = process.env.VUE_APP_BOOK_LIST ? process.env.VUE_APP_BOOK_LIST.split("/") : [];
|
module.exports = defineConfig({
|
publicPath: process.env.VUE_APP_PUBLIC_PATH,
|
transpileDependencies: true,
|
lintOnSave: false,
|
devServer: {
|
open: true,
|
historyApiFallback: true,
|
allowedHosts: "all",
|
headers: {
|
"access-control-allow-origin": "*",
|
},
|
client: {
|
overlay: { warnings: false, errors: true }
|
}
|
},
|
configureWebpack: {
|
output: {
|
library: `app-content`,
|
libraryTarget: "umd",
|
chunkLoadingGlobal: `webpackJsonp_app-content`
|
},
|
plugins: [
|
new webpack.IgnorePlugin({
|
checkResource(resource) {
|
if (process.env.VUE_APP_ENV == "product") {
|
// 编译和打包过滤
|
for (let i = 0; i < bookList.length; i++) {
|
const bookName = bookList[i];
|
if (bookName != process.env.VUE_APP_BOOK_ID) {
|
// 过滤不需要的模块
|
if (resource.indexOf(bookName) > -1) {
|
return true;
|
}
|
}
|
}
|
}
|
return false;
|
}
|
})
|
]
|
},
|
chainWebpack: (config) => {
|
config.module
|
.rule("change-prefix")
|
.test(/\.js$/)
|
.include.add("/node_modules/element-ui/lib")
|
.end()
|
.use("change-prefix")
|
.loader("change-prefix-loader")
|
.options({
|
prefix: "el-",
|
replace: "gp-"
|
})
|
.end();
|
}
|
});
|