Angular Universal与Angular Service Worker

时间:2018-10-24 07:10:40

标签: angular service-worker angular-universal ssr

我正在从事一个同时使用SSR和SW的项目。

SSR在首次渲染时以及爬虫读取页面时均能完美运行。

另一方面,服务人员也工作得很好。

但是在Service Worker缓存 index.html 文件之后会发生问题。

以下是重现问题的步骤:

  1. 第一次打开页面时,您会看到SSR渲染了html,并立即获得了结果
  2. 然后Service Worker缓存所有内容
  3. 刷新或更改页面时,看不到SSR呈现的html,因为index.html是由Service Worker缓存的。
  4. 如果从缓存Service Worker崩溃中删除index.html

我正在使用Angular 7.0

这是我正在使用的 ngsw-config.json

{
  "index": "/index.html",
  "assetGroups": [
    {
      "name": "app",
      "installMode": "prefetch",
      "updateMode": "prefetch",
      "resources": {
        "files": ["/favicon.ico", "/index.html", "/*.css", "/*.js"]
      }
    },
    {
      "name": "assets",
      "installMode": "lazy",
      "updateMode": "prefetch",
      "resources": {
        "files": ["/assets/**"]
      }
    }
  ],
  "dataGroups": [
    {
      "name": "api",
      "urls": ["https://example.com/**"],
      "cacheConfig": {
        "maxSize": 30,
        "maxAge": "1d",
        "timeout": "30s",
        "strategy": "freshness"
      }
    }
  ]
}

0 个答案:

没有答案