Сервисный работник, у которого есть область, не кэширует файлы
Я создаю сервисного работника, у которого есть область. Хотя это работает, но не правильно. SW не работает с файлами ресурсов.
Вот демонстрационный код, который я создаю, чтобы проиллюстрировать этот вопрос. Github ссылка
importSW.js
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register('/public/sw.js', { scope: '/public/' }).then(registration => {
console.log('SW registered: ', registration);
}).catch(registrationError => {
console.log('SW registration failed: ', registrationError);
});
}
server.js
const path = require('path');
const express = require('express');
const app = express();
app.get('/', (req, res, next) => {
res.sendFile(path.join(__dirname, './dist/index.html'));
});
app.use('/public', express.static(path.join(__dirname, './dist')));
app.listen(8001);