Я новичок в PWA. Я слышал хорошие вещи о PWA. Поэтому я попытался дать ему шанс. У меня есть приложение, встроенное в торт php 2. Я внедряю приложение PWA в приложение. Я был впечатлен скоростью и ощущением приложения. Но застрял в вопросе, например, когда я вхожу в приложение, затем его логин (я могу go на панель инструментов), но панель навигации не обновляется после входа в систему. Это означает, что после входа в систему будет отображаться ссылка для входа и входа в систему.
До и после входа одинаковая панель навигации. У меня есть сила refre sh страницы (CTRL + F5), чтобы обновить панель навигации.
Вот мой код.
if('serviceWorker' in navigator) {
window.addEventListener('load', function() {
navigator.serviceWorker.register('/sw.js').then(function(registration) {
// Registration was successful
registration.update();
for (let reg of registration) {
reg.update();
}
console.log('ServiceWorker registration successful with scope: ', registration.scope);
}, function(err) {
// registration failed :(
console.log('ServiceWorker registration failed: ', err);
});
});
}
В моем файле sw. js, события Install и Fetch. В соответствии с моим кодом я кеширую только CSS, JS и изображения.
self.addEventListener('install', function(e) {
e.waitUntil(
caches.open('sl-store').then(function(cache) {
return cache.addAll([
'/frontend/css',
'/css/',
'/js/',
'/fonts/',
'/img/',
'/font-awesome-4.1.0/',
]);
})
);
});
self.addEventListener('fetch', function(e) {
console.log(e.request.url);
e.respondWith(
caches.match(e.request).then(function(response) {
//return response || fetch(e.request);
return fetch(e.request) || response;
})
);
});
Что я здесь не так делаю. Пожалуйста, предложите.