首页 > 解决方案 > 如果我手动设置块,如何让 WorkboxPlugin 缓存我的 index.html?

问题描述

在我的 GenerateSW 配置中,我手动指定要预缓存的 Webpack 块:

chunks: [ // Precaching
    'runtime', 'angular',
    'rxjs', 'tslib',
    'webpack', 'zone.js',
    'app', 'styles'
],

如果 index.html 不是 Webpack 块,我如何在此处包含它?

标签: angularwebpackprogressive-web-appshtml-webpack-pluginworkbox

解决方案


我通过将 index.html 添加为条目来解决此问题,然后使用 ChunkRenamePlugin 将其重命名为“index.html”(删除散列和 js 扩展名),以便该条目不包含在 HtmlWebpackPlugin 中。

entry: {
    index: './src/index.html',
}
new ChunkRenamePlugin({
    index: 'index.html'
}),
new WorkboxPlugin.GenerateSW({
chunks: [
    'index', 'runtime', 'angular',
    'rxjs', 'tslib',
    'webpack', 'zone.js',
    'app', 'styles'
]})

推荐阅读