当我在"应用程序"中切换到离线模式时选项卡并重新加载页面" fetch"事件与evt.request.mode ='导航'在5秒后发射2次然后发射1次。
我的SW代码是这样的:
function fetchHandler(evt) {
const waitPromise = fetch(evt.request.url).catch(err => {
console.log(`${new Date} - error`);
return Response.error();
});
evt.respondWith(waitPromise);
}
self.addEventListener('fetch', evt => {
console.log('fetch', evt.request.url, evt.request.mode);
const isFetch = (evt.request.method === 'GET');
const isNavigate = (evt.request.mode === 'navigate');
if (isFetch && isNavigate) {
fetchHandler(evt);
}
});

这是否是预期的行为?