我的应用程序设计为离线工作,所以我使用了新鲜度策略。但是,在某些方面可以通过在线缓存进行改进。
我已指定对 API 的某些重复调用应使用性能策略。除了离线一小时后,这些文件消失并且应用程序停止工作之外,这有效。
有没有一种简单的方法可以让性能策略文件在到期后保持可用,以便仍然可以离线访问它们?他们可能已经老了,但是当没有其他可用的时候他们会这样做。
它是一个陷阱 22 - 我无法在不丢失离线模式的情况下进行优化。
基本上,我希望在线时拥有不到一小时的数据,但离线时我对长达一周的数据感到满意。
我的 ngsw-config.json
"dataGroups": [
{
"name": "optimise",
"urls": [
"https://**/optimise.php"
],
"cacheConfig": {
"strategy": "performance",
"maxSize" : 250,
"maxAge" : "1h"
}
},
{
"name": "offline",
"urls": [
"https://**/offline.php"
],
"cacheConfig": {
"strategy": "freshness",
"maxSize" : 250,
"maxAge" : "7d",
"timeout" : "15s"
}
}
]