我刚刚开始查看SplitChunksPlugin,它生成了一些新的bundle,例如120.b01d2775b45c779ccb2e.bundle.js
。当我导航到页面时,我可以看到user_spa. bundle. js像往常一样加载,但随后页面只是一个白色页,没有错误。
我已经在路线上使用了react和lazy-loading,它生成了类似的bundle,但是当导航到一个新的路线时,它们会按需加载。
我原以为代码分割也会有类似的效果,但我肯定漏掉了什么。
以下是Webpack配置:
module.exports = {
context: path.join(__dirname, "App"),
entry: {
user_spa: ["./Spa/user_spa.js"],
admin_spa: ["./Spa/admin_spa.js"],
login_spa: ["./Spa/login_spa.js"],
},
optimization: {
moduleIds: 'deterministic',
runtimeChunk: 'single',
splitChunks: {
chunks: 'all',
cacheGroups: {
vendor: {
test: /[\\/]node_modules[\\/]/,
name: 'vendors',
chunks: 'all',
enforce: true
},
},
},
},
target: ["web", "es5"],
}
哪位好心人能给我指个路吗?
1条答案
按热度按时间n3schb8v1#
如果有人遇到这个问题,并感到困惑,因为我是.分割块将创建新的捆绑,你需要添加作为脚本标记在您的索引html文件.如果你使用HtmlWebpackPlugin,你可以使用它来自动包括他们.但在我的情况下,我们没有,因此我需要手动添加他们.
以下是最终结果: