问题描述
我们当前正在将WorkBox(v5)用于相当大的SaaS平台。大多数路由都设置为使用NetworkFirst
。
我无法解决的原因是,对于某些路线,当以非生产模式运行平台时,有一些WorkBox警告说在为以下情况更新缓存时无法确保Service Worker保持活动状态[路线] 。
有人知道该消息的实际含义,即为什么触发该消息吗?我看到它来自 ExpirationPlugin 。
该平台的前端是带有 Webpack 的 Vue.js ,我们正在将WorkBoxWebpackPlugin
和InjectManifest
一起使用。
它的配置如下:
config.plugin('workBox')
.use(WorkBoxWebpackPlugin.InjectManifest,[{
swSrc: './src/sw.js',swDest: 'sw.js',maximumFileSizetoCacheInBytes: 5242880,// 5MB
exclude: [
/\web.config$/,/refresh.html$/,/sw.js$/
]
}])
手指交叉,我将可以了解更多有关此警告消息的信息。预先感谢。
解决方法
经过进一步测试,当路由使用 NetworkFirst
和 networkTimeoutSeconds
并且来自路由的响应超过 networkTimeoutSeconds
中设置的秒数时,似乎会显示此警告。