NotificationEvent
Hinweis: Diese Funktion ist nur in Service Workers verfügbar.
Das NotificationEvent
Interface der Notifications API repräsentiert ein Benachrichtigungsereignis, das im ServiceWorkerGlobalScope
eines ServiceWorker
ausgelöst wird.
Dieses Interface erbt vom ExtendableEvent
Interface.
Hinweis:
Nur persistente Benachrichtigungsereignisse, die im ServiceWorkerGlobalScope
Objekt ausgelöst werden, implementieren das NotificationEvent
Interface. Nicht-persistente Benachrichtigungsereignisse, die im Notification
Objekt ausgelöst werden, implementieren das Event
Interface.
Konstruktor
NotificationEvent()
-
Erstellt ein neues
NotificationEvent
-Objekt.
Instanz-Eigenschaften
Erbt auch Eigenschaften von seinem Eltern-Interface, ExtendableEvent
.
NotificationEvent.notification
Schreibgeschützt-
Gibt ein
Notification
-Objekt zurück, das die Benachrichtigung repräsentiert, die angeklickt wurde, um das Ereignis auszulösen. NotificationEvent.action
Schreibgeschützt-
Gibt die Zeichenfolgen-ID des Benachrichtigungsschalters zurück, den der Benutzer angeklickt hat. Dieser Wert gibt eine leere Zeichenfolge zurück, wenn der Benutzer die Benachrichtigung an einer anderen Stelle als auf einer Aktionstaste angeklickt hat oder die Benachrichtigung keine Taste hat.
Instanz-Methoden
Erbt auch Methoden von seinem Eltern-Interface, ExtendableEvent
.
Beispiel
self.addEventListener("notificationclick", (event) => {
console.log(`On notification click: ${event.notification.tag}`);
event.notification.close();
// This looks to see if the current is already open and
// focuses if it is
event.waitUntil(
clients
.matchAll({
type: "window",
})
.then((clientList) => {
for (const client of clientList) {
if (client.url === "/" && "focus" in client) return client.focus();
}
if (clients.openWindow) return clients.openWindow("/");
}),
);
});
Spezifikationen
Specification |
---|
Notifications API Standard # notificationevent |
Hinweis:
Dieses Interface ist in der Notifications API spezifiziert, wird aber über ServiceWorkerGlobalScope
aufgerufen.
Browser-Kompatibilität
BCD tables only load in the browser