我正在尝试在渐进式网络应用中缓存静态文件和远程文件。
静态文件会被缓存,但远程文件不是。
browser caching of static & remote files
以下是代码:
self.addEventListener( 'install', e => {
e.waitUntil(
caches.open( 'offline' )
.then( cache => cache.addAll([
'/',
'https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css',
'https://code.jquery.com/jquery-3.2.1.js',
'scripts/firebase.js',
'scripts/localForage.js',
'old-index.html',
'scripts/main.js',
]))
);
});
提前致谢
以下是更新后的代码
var filesToCache = [
'.',
"https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.5.0/css/bootstrap-datepicker.css",
'https://code.jquery.com/jquery-3.2.1.js',
'scripts/firebase.js',
'scripts/localForage.js',
'cce.html',
'scripts/main.js',
'scripts/secondary.js',
'https://cdn.datatables.net/1.10.15/css/jquery.dataTables.min.css'
];
var staticCacheName = 'pages-cache-v1';
self.addEventListener('install', function(event) {
console.log('Attempting to install service worker and cache static assets');
event.waitUntil(
caches.open(staticCacheName)
.then(function(cache) {
return cache.addAll(filesToCache);
})
);
});
答案 0 :(得分:0)
我猜你没有使用与此documentation相同的格式。以下是此thread的示例代码:
self.addEventListener('install', function(e) {
e.waitUntil(
caches.open('airhorner').then(function(cache) {
return cache.addAll([
'https://paul.kinlan.me/'
]);
})
);
});