navigator.serviceWorker.controller ist immer null
Ich habe das Problem, dass der navigator.serviceWorker.controller nach der Registrierung des serviceWorker immer null ist. Ich mache nie eine Force-Aktualisierung und aktualisiere nur die Seite. Ich teste es mit Google Chrome 42.0.2311.152 m (32-Bit).
var currentServiceWorker = null;
navigator.serviceWorker.register(SERVICE_WORKER_URL).then(function(serviceWorkerRegistration {
if (navigator.serviceWorker.controller) {
currentServiceWorker = navigator.serviceWorker.controller;
} else {
currentServiceWorker = serviceWorkerRegistration.active;
}
});
Demzufolge
Die schreibgeschützte Controller-Eigenschaft der ServiceWorkerContainer-Schnittstelle gibt ein ServiceWorker-Objekt zurück, wenn der Status aktiviert ist (dasselbe Objekt, das von ServiceWorkerRegistration.active zurückgegeben wird). Diese Eigenschaft gibt null zurück, wenn es sich bei der Anforderung um eine erzwungene Aktualisierung handelt (Umschalt + Aktualisierung) oder wenn kein aktiver Worker vorhanden ist. ( Quelle:https: //developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerContainer/controlle)
navigator.serviceWorker.controller
sollte dasselbe Objekt wie @ zurückgebserviceWorkerRegistration.active
. Aber mit.active
Ich bekomme den aktiven Arbeiter mit.controller
nicht.
Haben Sie Ideen für diese Situation?
Danke, Andi