如何将陈旧的宣传材料用于Workboxsw porache项目



workboxSW.precache默认情况下是cachefirst,是否有一种改变其策略的方法?

workboxSW.precache(myPrecacheItems);

或有没有一种方法可以定义por art式项目上的高速缓存名称,因此可以通过指定路由来覆盖凝固点项目?

parcache基本上是针对您的静态资产(例如CSS/JS等)。即使您不附加哈希,workbox也会在con缩时附加哈希。

因此,如果您更改它们,新的SW将会发挥作用,并提供新的捆绑包。

而刻板的静态值是一种运行时策略(基本上用于动态数据,例如API)。您可以在工作箱中添加运行时处理程序,并期望它们工作。

如果您仍然认为使用运行时策略需要止痛药,请详细说明您的用例。

虽然我不知道是否可以更改工作盒。P>

首先使用定义的缓存名称使用StaleRereRereRevalidate策略来创建您的工作箱路线:

workbox.routing.registerRoute(
    /.*.html/,
    workbox.strategies.staleWhileRevalidate({  
        cacheName: 'MY-CACHE',
    })
);

在SW安装时,您已定义的路线可预测一些URL。将此代码添加到您的服务工作者:

self.addEventListener('install', (event) => {
    const urls = ['https://url1.html','https://url2.html','etc'];
    event.waitUntil(caches.open('MY-CACHE').then((cache) => cache.addAll(urls)));
});

其中 my-cache 是您 stalewhilerevalidate 策略中的缓存的名称。

相关内容

  • 没有找到相关文章

最新更新