--- title: notifications.getAll() slug: Mozilla/Add-ons/WebExtensions/API/notifications/getAll tags: - API - Add-ons - Extensions - Method - Non-standard - Notifications - Reference - WebExtensions - getAll translation_of: Mozilla/Add-ons/WebExtensions/API/notifications/getAll ---
Obtient toutes les notifications actuellement actives créées par l'extension.
C'est une fonction asynchrone qui renvoie une Promise
.
var gettingAll = browser.notifications.getAll()
None.
Une Promise
qui sera accomplie avec un objet. Chaque notification actuellement active est une propriété de cet objet : le nom de la propriété est l'ID de la notification et la valeur de la propriété est un objet {{WebExtAPIRef("notifications.NotificationOptions")}} décrivant cette notification.
Notez que vous pouvez définir explicitement un ID pour une notification en le passant dans {{WebExtAPIRef("notifications.create()")}}. Si vous ne le faites pas, le navigateur en générera un. Les ID spécifiés explicitement sont des chaînes, mais les ID générés sont des nombres.
{{Compat("webextensions.api.notifications.getAll")}}
Cet exemple affiche une notification lorsque l'utilisateur clique sur une action du navigateur, à moins que la notification ne soit déjà affichée, auquel cas il efface la notification. Il utilise getAll() pour déterminer si la notification est affichée :
var myNotification = "my-notification"; function toggleAlarm(all) { let ids = Object.keys(all); if (ids.indexOf(myNotification) != -1) { 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);
Cet exemple enregistre le titre de toutes les notifications actives :
function logNotifications(all) { for (let id in all) { console.log(`Title: ${all[id].title}`); } } browser.notifications.getAll().then(logNotifications);
{{WebExtExamples}}
Cette API est basée sur l'API Chromium chrome.notifications
.
Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.