import{_ as s,c as n,o as a,a as p}from"./app.edf9ebd2.js";const u=JSON.parse('{"title":"splitChunks \u5355\u72EC\u6253\u5305\u7B2C\u4E09\u65B9\u6A21\u5757","description":"","frontmatter":{},"headers":[],"relativePath":"guide/vue2/chunks.md","lastUpdated":1661309740000}'),l={name:"guide/vue2/chunks.md"},o=p(`
module.exports = {
chainWebpack: (config) => {
config.when(IS_PROD, (config) => {
config
.plugin("ScriptExtHtmlWebpackPlugin")
.after("html")
.use("script-ext-html-webpack-plugin", [
{
// \u5C06 runtime \u4F5C\u4E3A\u5185\u8054\u5F15\u5165\u4E0D\u5355\u72EC\u5B58\u5728
inline: /runtime\\..*\\.js$/,
},
])
.end();
config.optimization.splitChunks({
chunks: "all",
cacheGroups: {
// cacheGroups \u4E0B\u53EF\u4EE5\u53EF\u4EE5\u914D\u7F6E\u591A\u4E2A\u7EC4\uFF0C\u6BCF\u4E2A\u7EC4\u6839\u636Etest\u8BBE\u7F6E\u6761\u4EF6\uFF0C\u7B26\u5408test\u6761\u4EF6\u7684\u6A21\u5757
commons: {
name: "chunk-commons",
test: resolve("src/components"),
minChunks: 3, // \u88AB\u81F3\u5C11\u7528\u4E09\u6B21\u4EE5\u4E0A\u6253\u5305\u5206\u79BB
priority: 5, // \u4F18\u5148\u7EA7
reuseExistingChunk: true, // \u8868\u793A\u662F\u5426\u4F7F\u7528\u5DF2\u6709\u7684 chunk\uFF0C\u5982\u679C\u4E3A true \u5219\u8868\u793A\u5982\u679C\u5F53\u524D\u7684 chunk \u5305\u542B\u7684\u6A21\u5757\u5DF2\u7ECF\u88AB\u62BD\u53D6\u51FA\u53BB\u4E86\uFF0C\u90A3\u4E48\u5C06\u4E0D\u4F1A\u91CD\u65B0\u751F\u6210\u65B0\u7684\u3002
},
node_vendors: {
name: "chunk-libs",
chunks: "initial", // \u53EA\u6253\u5305\u521D\u59CB\u65F6\u4F9D\u8D56\u7684\u7B2C\u4E09\u65B9
test: /[\\\\/]node_modules[\\\\/]/,
priority: 10,
},
vantUI: {
name: "chunk-vantUI", // \u5355\u72EC\u5C06 vantUI \u62C6\u5305
priority: 20, // \u6570\u5B57\u5927\u6743\u91CD\u5230\uFF0C\u6EE1\u8DB3\u591A\u4E2A cacheGroups \u7684\u6761\u4EF6\u65F6\u5019\u5206\u5230\u6743\u91CD\u9AD8\u7684
test: /[\\\\/]node_modules[\\\\/]_?vant(.*)/,
},
},
});
config.optimization.runtimeChunk("single");
});
},
};