notifications.getAll()
Ruft alle aktuell aktiven Benachrichtigungen ab, die von der Erweiterung erstellt wurden.
Dies ist eine asynchrone Funktion, die ein Promise
zurückgibt.
Syntax
let gettingAll = browser.notifications.getAll()
Parameter
Keine.
Rückgabewert
Ein Promise
, das mit einem Objekt erfüllt wird. Jede aktuell aktive Benachrichtigung ist eine Eigenschaft dieses Objekts: Der Name der Eigenschaft ist die ID der Benachrichtigung, und der Wert der Eigenschaft ist ein notifications.NotificationOptions
-Objekt, das diese Benachrichtigung beschreibt.
Beachten Sie, dass Sie eine ID für eine Benachrichtigung explizit definieren können, indem Sie sie zu notifications.create()
übergeben. Wenn Sie dies nicht tun, generiert der Browser eine. Explizit angegebene IDs sind Zeichenfolgen, aber generierte IDs sind Zahlen.
Browser-Kompatibilität
BCD tables only load in the browser
Beispiele
Dieses Beispiel zeigt eine Benachrichtigung, wenn der Benutzer auf eine Browseraktion klickt, es sei denn, die Benachrichtigung wird bereits angezeigt. In diesem Fall wird die Benachrichtigung gelöscht. Es verwendet getAll()
, um festzustellen, ob die Benachrichtigung angezeigt wird:
const myNotification = "my-notification";
function toggleAlarm(all) {
const ids = Object.keys(all);
if (ids.includes(myNotification)) {
browser.notifications.clear(myNotification);
} else {
console.log("showing");
browser.notifications.create(myNotification, {
type: "basic",
title: "Am imposing title",
message: "Some interesting content",
});
}
}
function handleClick() {
console.log("clicked");
browser.notifications.getAll().then(toggleAlarm);
}
browser.browserAction.onClicked.addListener(handleClick);
Dieses Beispiel protokolliert den Titel aller aktiven Benachrichtigungen:
function logNotifications(all) {
for (const id in all) {
console.log(`Title: ${all[id].title}`);
}
}
browser.notifications.getAll().then(logNotifications);
Hinweis:
Diese API basiert auf Chromium's chrome.notifications
API.