NavigationHistoryEntry: getState() method
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The getState()
method of the NavigationHistoryEntry
interface returns a clone of the developer-supplied state associated with this history entry.
Syntax
js
getState()
Parameters
None.
Return value
A value representing the state. This can be any structured-cloneable data type.
If no state is defined or if current document is not fully active, it returns undefined
.
Exceptions
None.
Examples
js
async function handleReload() {
// Update existing state via reload()
await navigation.reload({
state: { ...navigation.currentEntry.getState(), newState: 3 },
});
// Print current state to the console
const current = navigation.currentEntry;
console.log(current.getState());
}
Specifications
Specification |
---|
HTML # dom-navigationhistoryentry-getstate-dev |
Browser compatibility
Report problems with this compatibility data on GitHubdesktop | mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
getState |
Legend
Tip: you can click/tap on a cell for more information.
- Full support
- Full support
- No support
- No support
- Experimental. Expect behavior to change in the future.
- See implementation notes.
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
See also
- Modern client-side routing: the Navigation API
- Navigation API explainer
- Domenic Denicola's Navigation API live demo
- Methods that allow state to be updated —
Navigation.navigate()
,Navigation.reload()
, andNavigation.updateCurrentEntry()