Navigation: updateCurrentEntry() Methode

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Die updateCurrentEntry() Methode des Navigation Interfaces aktualisiert den state des currentEntry; sie wird in Fällen verwendet, in denen die Statusänderung unabhängig von einer Navigation oder einem Neuladen erfolgt.

Syntax

js
updateCurrentEntry(options)

Parameter

options

Ein Optionsobjekt, das die folgenden Eigenschaften enthält:

state

Vom Entwickler definierte Information, die im zugehörigen NavigationHistoryEntry, gespeichert wird, sobald die Navigation abgeschlossen ist. Abrufbar über getState(). Dies kann jeder Datentyp sein. Sie könnten beispielsweise die Anzahl der Seitenbesuche für Analysezwecke speichern oder UI-Zustandsdetails speichern, sodass die Ansicht genau so angezeigt werden kann, wie der Benutzer sie zuletzt verlassen hat. Alle im state gespeicherten Daten müssen strukturklonbar sein.

Rückgabewert

Keiner (undefined).

Ausnahmen

DataCloneError DOMException

Wird ausgelöst, wenn der state Parameter Werte enthält, die nicht strukturklonbar sind.

InvalidStateError DOMException

Wird ausgelöst, wenn Navigation.currentEntry null ist, d.h. kein aktueller Verlaufs-Eintrag vorhanden ist. Dies könnte zum Beispiel passieren, wenn die aktuelle Seite about:blank ist.

Beispiele

Sie könnten beispielsweise Folgendes verwenden, um den geöffneten/geschlossenen Zustand eines <details> Elements zu aktualisieren, sodass der Zustand beim Neuladen der Seite oder beim Navigieren von einer anderen Seite zurück wiederhergestellt werden kann.

js
detailsElem.addEventListener("toggle", () => {
  navigation.updateCurrentEntry({ state: { detailOpen: detailsElem.open } });
});

Spezifikationen

Specification
HTML
# dom-navigation-updatecurrententry-dev

Browser-Kompatibilität

Siehe auch