You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PWA使用pwabuilder代码时service worker的importScripts未定义如何解决

问题原因
  • 你额外添加了一行<script src="/src/pwa/pwabuilder-sw.js"></script>直接在普通网页上下文加载Service Worker文件:importScripts是仅Service Worker运行环境内置的全局API,普通网页主线程上下文不存在这个方法,直接用script标签加载sw文件会触发该报错。
  • Service Worker的正确加载方式就是通过navigator.serviceWorker.register()方法,由浏览器自动在独立的worker线程中加载执行,不需要额外用script标签引入。
修复方案

直接删除代码中多余的script引入行即可,修改后的前端代码如下:

<link rel="manifest" href="/src/pwa/manifest.json"></link>
<script>
if ('serviceWorker' in navigator) {
  window.addEventListener('load', function() {
    navigator.serviceWorker.register('/src/pwa/pwabuilder-sw.js');
  })};
</script>
额外优化建议

你当前的manifest.json配置存在一处不规范的地方,可以同步修改避免后续出现异常:

  • prefer_related_applications字段要求传入布尔值,你当前填写的是字符串"false",改为布尔值false即可。

内容的提问来源于stack exchange,提问作者QQQ

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.20 00:06:06