【问题标题】:Angular - service worker does not cache resourcesAngular - 服务工作者不缓存资源
【发布时间】:2020-01-08 09:33:02
【问题描述】:

使用 Angular 8,当我在 domain/web/v/lib 下注册服务工作者时,它不会缓存或获取 domain/web/v/lib/resources/test.js。

起初这似乎是一个范围问题,但后来我在 domain/ngsw-worker.json 下注册了 service worker,虽然请求通过 service worker,但它仍然没有缓存任何东西。缓存始终为空,并且从服务器请求资源而不是从缓存中。

ngsw.json 看起来像这样:

{
"index": "/index.html",
  "assetGroups": [
    {
      "name": "resources",
      "installMode": "lazy",
      "updateMode": "lazy",
      "urls"[
"/web/v/lib/resources/test.js",],
      "patterns": []
    }
  ],
  "dataGroups": [],
  "hashTable": {
    "/web/v/lib/resources/test.js": "699fb3320f0d0761a4f7e3c469a2a42598b74772"}
,}

我想我错过了一些明显的东西,但不知道是什么:/

编辑:发现它只有在我为基本 href 路径上的服务人员提供服务时才有效,出于某种原因,每当我将它移到其他地方时,它都不起作用:O

【问题讨论】:

    标签: angular typescript service-worker progressive-web-apps angular-service-worker


    【解决方案1】:

    试试这个看看它是否适合你

    "resources": {
            "files": [
              "/assets/favicon.ico",
              "/*.css",
              "/*.js"
            ]
          }
    

    这个配置缓存了每一个静态资源,比如 css、js。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-09
      • 2017-01-14
      • 1970-01-01
      • 1970-01-01
      • 2023-03-31
      相关资源
      最近更新 更多