Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

storage.StorageArea.onChanged

Wird ausgelöst, wenn sich ein oder mehrere Elemente in einem Speicherbereich ändern, und gibt Details zu den geänderten Schlüsseln zurück. Im Vergleich zu storage.onChanged ermöglicht Ihnen dieses Ereignis, Änderungen in einem der Speicherbereiche local, managed, session und sync zu überwachen.

Hinweis: In Firefox umfassen die zurückgegebenen Informationen alle Schlüssel innerhalb des Speicherbereichs. Zudem kann der Rückruf aufgerufen werden, wenn es keine Änderung an den zugrunde liegenden Daten gibt. Details zu den geänderten Elementen finden Sie, indem Sie jedes zurückgegebene Schlüssel-storage.StorageChange-Objekt untersuchen. Siehe Firefox-Fehler 1833153.

Firefox lädt Änderungen am verwalteten Speicherinhalt (aus der JSON-Manifestdatei (nativen Manifestdatei) oder der 3rdparty-Unternehmensrichtlinie) nur, wenn es neu gestartet wird. Daher wird dieses Ereignis in Firefox niemals ausgelöst.

Syntax

js
// local can also be sync, managed, or session
browser.storage.local.onChanged.addListener(listener)
browser.storage.local.onChanged.removeListener(listener)
browser.storage.local.onChanged.hasListener(listener)

Ereignisse haben drei Funktionen:

addListener(listener)

Fügt einen Listener zu diesem Ereignis hinzu.

removeListener(listener)

Stellt das Abhören dieses Ereignisses ein. Das listener-Argument ist der zu entfernende Listener.

hasListener(listener)

Überprüft, ob listener für dieses Ereignis registriert ist. Gibt true zurück, wenn es zuhört, andernfalls false.

Syntax von addListener

Parameter

listener

Die Funktion, die aufgerufen wird, wenn dieses Ereignis eintritt. Der Funktion wird dieses Argument übergeben:

changes

object. Ein Objekt, das die Änderung beschreibt. Dieses enthält pro geändertem Schlüssel eine Eigenschaft. Der Eigenschaftsname ist der Name des geänderten Schlüssels, und dessen Wert ist ein storage.StorageChange-Objekt, das die Änderung dieses Elements beschreibt.

Beispiele

js
/*
Log the old value and its new value of
changes in the local storage.
*/
function logStorageChange(changes) {
  const changedItems = Object.keys(changes);

  for (const item of changedItems) {
    console.log(`${item} has changed:`);
    console.log("Old value: ", changes[item].oldValue);
    console.log("New value: ", changes[item].newValue);
  }
}

browser.storage.local.onChanged.addListener(logStorageChange);

Browser-Kompatibilität

Hinweis: Diese API basiert auf der chrome.storage-API von Chromium. Diese Dokumentation ist abgeleitet von storage.json im Chromium-Code.