如何解决self.__WB_MANIFEST 的多个实例
相关[https://forum.quasar-framework.org/topic/7808/injectmanifest-precaching-not-working][1]
我正在使用 quasar v2.0.0-beta.5 和 "workbox-webpack-plugin": "^5.1.4",遵循 pwa 教程。我现在正在使用 quasar.conf.js 中的 workboxPluginMode: 'InjectManifest' 处理服务工作者部分。我的 custom-service-worker.js 只是:
import { precacheAndRoute } from 'workbox-precaching'
precacheAndRoute(self.__WB_MANIFEST)
加载 pwa 时出现以下错误
未捕获的非数组:传入的参数“entries” 'workbox-precaching.PrecacheController.addToCacheList()' 必须是一个 数组
我已更新到最新版本的 Workbox: npm install --save-dev workbox-webpack-plugin@^6.1.0 以查看它是否有所不同,现在我在 quasar dev -m pwa 期间收到以下错误
在您的软件源中发现了多个 self.__WB_MANIFEST 实例。 只包含一次。有关详细信息,请参阅 GoogleChrome/workbox#2681
问题是,如果不解决这个问题,我将无法调试不同的缓存策略。
谢谢
平台(请填写以下信息):Quasar版本: v2.0.0-beta.5 @quasar/app 版本:v3.0.0-beta.7 Quasar 模式:[] SPA [] SSR [x] PWA [] 电子 [] Cordova [] 电容器 [] BEX 测试 在: [ ] SPA [ ] SSR [x ] PWA [ ] 电子 [ ] Cordova [ ] 电容器 [ ] BEX 操作系统:windows 10 节点:v14.15.1 NPM:6.14.8 纱线:1.22.10 浏览器:chrome(最新) iOS:Android:Electron:
解决方法
在您的 Service Worker 文件中执行此操作。
if (process.env.NODE_ENV === 'production') {
precacheAndRoute(self.__WB_MANIFEST);
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。