我的代码如下:
const registerServiceWorker = (onRegisterSuccessCB, onRegisterFailCB, onReadySuccessCB) => {
if('serviceWorker' in navigator) {
navigator.serviceWorker.register(SW_PATH, { scope: '/' })
.then(function(registration) {
console.log('Service Worker Registered');
onRegisterSuccessCB && onRegisterSuccessCB()
}, function(error){
console.log('Service Worker Registered fail');
onRegisterFailCB && onRegisterFailCB(error)
});
navigator.serviceWorker.ready.then(function(registration) {
console.log('Service Worker Ready');
onReadySuccessCB && onReadySuccessCB()
});
}
}
,然后刷新页面。它在控制台中按此顺序打印:
'Service Worker Ready'
'Service Worker Registered'
任何人都可以解释原因吗?