Lighthouse を使用して webapp を監査しています。私は失敗に取り組んでいますが、これで立ち往生しています:
失敗: マニフェスト start_url が Service Worker によってキャッシュされません。
私のmanifest.json
中で私は持っています
"start_url": "index.html",
私のworker.js
中で私は以下をキャッシュしています:
let CACHE_NAME = 'my-site-cache-v1';
let urlsToCache = [
'/',
'/scripts/app.js',
'/index.html'
];
これは、Chrome 開発ツールの [アプリケーション] タブに表示されるものと一致します。
では...なぜstart_url
キャッシュされていないと言っているのですか?
ここに私の完全なworker.js
ファイルがあります:
if ('serviceWorker' in navigator) {
window.addEventListener('load', function() {
navigator.serviceWorker.register('/worker.js').then(function(registration) {
console.log('ServiceWorker registration successful with scope: ', registration.scope);
}, function(err) {
console.log('ServiceWorker registration failed: ', err);
});
});
}
let CACHE_NAME = 'my-site-cache-v1.1';
let urlsToCache = [
'/',
'/scripts/app.js',
'/index.html'
];
self.addEventListener('install', function(event) {
event.waitUntil(
caches.open(CACHE_NAME)
.then(function(cache) {
console.log('Opened cache');
return cache.addAll(urlsToCache);
})
);
});