代码拉取完成,页面将自动刷新
同步操作将从 Pear Admin/Pear Admin Ant 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
/**
* webpack 配置(vue-cli提示的vue.config.js)
* @type {{devServer: {port: number, open: boolean}}}
*/
const path = require("path");
const resolve = dir => {
return path.join(__dirname, dir);
};
const isDev = process.env.NODE_ENV === "development";
const CompressionWebpackPlugin = require("compression-webpack-plugin");
const ProductionGzipExtensions = ["html", "js", "css", "svg"];
const WebpackBar = require("webpackbar");
const webpackBarName = "pear-admin";
module.exports = {
publicPath: "",
outputDir: "dist/admin",
devServer: {
open: true, // 启动后自动打开浏览器
port: 8080 // 端口
},
// 构建时开启多进程处理babel编译
parallel: require("os").cpus().length > 1,
configureWebpack(config) {
//配置根目录
return {
resolve: {
alias: {
"@": resolve("src")
}
},
plugins: [
new WebpackBar({
name: webpackBarName
})
]
};
},
chainWebpack(config) {
config.when(isDev, config => {
config.devtool("source-map");
});
config.plugins.delete("prefetch");
config.resolve.symlinks(true);
config.when(!isDev, config => {
config.devtool("none");
//splitChunks拆分
config.optimization.splitChunks({
chunks: "all",
cacheGroups: {
libs: {
name: "Chunk-Libs",
test: /[\\/]node_modules[\\/]/,
priority: 10,
chunks: "initial"
},
AntdUI: {
name: "Chunk-Antd",
priority: 20,
test: /[\\/]node_modules[\\/]_?@ant-design(.*)/
}
}
});
//Gzip
config
.plugin("compression")
.use(CompressionWebpackPlugin, [
{
filename: "[path][base].gz[query]",
algorithm: "gzip",
test: new RegExp(
"\\.(" + ProductionGzipExtensions.join("|") + ")$"
),
threshold: 8192,
minRatio: 0.8
}
])
.end();
});
},
runtimeCompiler: true,
productionSourceMap: false,
css: {
// extract:true,
requireModuleExtension: true,
sourceMap: true,
loaderOptions: {
less: {
lessOptions: {
javascriptEnabled: true
}
}
}
}
};
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。