com.vaadin.flow.component.page.
Class History
- java.lang.Object
-
- com.vaadin.flow.component.page.History
-
All Implemented Interfaces:
public class History extends Object implements Serializable
Represents
window.history
in the browser. See e.g. documentation on MDN for detailed information on how the API works in the browser.Since:
1.0
Author:
Vaadin Ltd
See Also:
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description static class
History.HistoryStateChangeEvent
Event fired when the history state has changed.
static interface
History.HistoryStateChangeHandler
Handles location change events.
-
Constructor Summary
Constructors Constructor and Description History(UI ui)
Creates a history API endpoint for the given UI.
-
Method Summary
All Methods Modifier and Type Method and Description void
back()
Navigates back.
void
forward()
Navigates forward.
History.HistoryStateChangeHandler
getHistoryStateChangeHandler()
Gets the handler that is notified history state has changed.
UI
getUI()
Gets the UI that this instance belongs to.
void
go(int steps)
Navigates a number of steps forward or backward in the history.
void
pushState(elemental.json.JsonValue state, Location location)
Invokes
history.pushState
in the browser with the given parameters.void
pushState(elemental.json.JsonValue state, String location)
Invokes
history.pushState
in the browser with the given parameters.void
replaceState(elemental.json.JsonValue state, Location location)
Invokes
history.replaceState
in the browser with the given parameters.void
replaceState(elemental.json.JsonValue state, String location)
Invokes
history.replaceState
in the browser with the given parameters.void
setHistoryStateChangeHandler(History.HistoryStateChangeHandler historyStateChangeHandler)
Sets a handler that will be notified when the history state has changed.
-
-
-
Constructor Detail
-
History
public History(UI ui)
Creates a history API endpoint for the given UI.
Parameters:
ui
- the ui, not null
-
-
Method Detail
-
getUI
public UI getUI()
Gets the UI that this instance belongs to.
Returns:
the ui, not null
-
pushState
public void pushState(elemental.json.JsonValue state, String location)
Invokes
history.pushState
in the browser with the given parameters. This is a shorthand method forpushState(JsonValue, Location)
, creatingLocation
from the string provided.Parameters:
state
- the JSON state to push to the history stack, ornull
to only change the locationlocation
- the new location to set in the browser, ornull
to only change the JSON state
-
pushState
public void pushState(elemental.json.JsonValue state, Location location)
Invokes
history.pushState
in the browser with the given parameters.Parameters:
state
- the JSON state to push to the history stack, ornull
to only change the locationlocation
- the new location to set in the browser, ornull
to only change the JSON state
-
replaceState
public void replaceState(elemental.json.JsonValue state, String location)
Invokes
history.replaceState
in the browser with the given parameters. This is a shorthand method forreplaceState(JsonValue, Location)
, creatingLocation
from the string provided.Parameters:
state
- the JSON state to push to the history stack, ornull
to only change the locationlocation
- the new location to set in the browser, ornull
to only change the JSON state
-
replaceState
public void replaceState(elemental.json.JsonValue state, Location location)
Invokes
history.replaceState
in the browser with the given parameters.Parameters:
state
- the JSON state to push to the history stack, ornull
to only change the locationlocation
- the new location to set in the browser, ornull
to only change the JSON state
-
setHistoryStateChangeHandler
public void setHistoryStateChangeHandler(History.HistoryStateChangeHandler historyStateChangeHandler)
Sets a handler that will be notified when the history state has changed.
History state changes are triggered when a
popstate
event is fired in the browser or when the user has navigated using a router link. There can only be one handler at a time.Parameters:
historyStateChangeHandler
- the handler to set, ornull
to remove the current handlerSee Also:
-
getHistoryStateChangeHandler
public History.HistoryStateChangeHandler getHistoryStateChangeHandler()
Gets the handler that is notified history state has changed.
Returns:
the history state handler, or
null
if no handler is setSee Also:
-
back
public void back()
Navigates back. This has the same effect as if the user would press the back button in the browser. This causes a
History.HistoryStateChangeEvent
to be fired asynchronously if the conditions described in the onpopstate documentation are met.
-
forward
public void forward()
Navigates forward. This has the same effect as if the user would press the forward button in the browser. This causes a
History.HistoryStateChangeEvent
to be fired asynchronously if the conditions described in the onpopstate documentation are met.
-
go
public void go(int steps)
Navigates a number of steps forward or backward in the history. This has the same effect as if the user would press the forward button in the browser. This causes a
History.HistoryStateChangeEvent
to be fired asynchronously if the conditions described in the onpopstate documentation are met.Parameters:
steps
- the number of steps to navigate, positive numbers navigate forward, negative numbers backward.0
causes the current page to be reloaded
-
-