Navigation: reload() 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 reload()
Methode des Navigation
Interfaces lädt die aktuelle URL neu und aktualisiert dabei alle bereitgestellten Zustände in der Liste der Verlaufseinträge.
Syntax
reload()
reload(options)
Parameter
options
Optional-
Ein Optionsobjekt, das die folgenden Eigenschaften enthält:
state
Optional-
Entwicklerdefinierte Informationen, die im zugehörigen
NavigationHistoryEntry
gespeichert werden sollen, sobald die Navigation abgeschlossen ist, abrufbar übergetState()
. Dies kann jeder beliebige Datentyp sein. Zum Beispiel könnten Sie die Anzahl der Seitenbesuche für Analysezwecke speichern oder Details zum UI-Zustand speichern, sodass die Ansicht genau so angezeigt werden kann, wie der Benutzer sie zuletzt verlassen hat. Alle imstate
gespeicherten Daten müssen strukturiert klonierbar sein. info
Optional-
Entwicklerdefinierte Informationen, die an das
navigate
Ereignis übergeben werden, verfügbar inNavigateEvent.info
. Dies kann jeder beliebige Datentyp sein. Beispielsweise möchten Sie den neu navigierten Inhalt mit einer anderen Animation anzeigen, je nachdem, wie er angesteuert wurde (nach links wischen, nach rechts wischen oder nach Hause gehen). Ein String, der angibt, welche Animation verwendet werden soll, könnte alsinfo
übergeben werden.
Rückgabewert
Ein Objekt mit den folgenden Eigenschaften:
committed
-
Ein
Promise
, der erfüllt wird, wenn sich die sichtbare URL geändert hat und ein neuerNavigationHistoryEntry
erstellt wurde. finished
-
Ein
Promise
, der erfüllt wird, wenn alle von demintercept()
Handler zurückgegebenen Promises erfüllt sind. Dies ist gleichbedeutend mit dem Erfüllen desNavigationTransition.finished
Versprechens, wenn dasnavigatesuccess
Ereignis ausgelöst wird.
Eine dieser Versprechen wird abgelehnt, wenn die Navigation aus irgendeinem Grund fehlgeschlagen ist.
Ausnahmen
DataCloneError
DOMException
-
Wird ausgelöst, wenn der
state
Parameter Werte enthält, die nicht strukturiert klonierbar sind.
Beispiele
Verwendung von info und state
async function handleReload() {
await navigation.reload({
info: { animation: "fade-in" },
state: { infoPaneOpen: true },
}).finished;
// Update application state
// …
}
Seite neu laden und ein neues Zustandsobjekt hinzufügen:
async function handleReload() {
await navigation.reload({
state: { ...navigation.currentEntry.getState(), newState: 3 },
}).finished;
// Update application state
// …
}
Spezifikationen
Specification |
---|
HTML # dom-navigation-reload-dev |