语法
js
traverseTo(key)
traverseTo(key, options)
参数
key-
要导航到的
NavigationHistoryEntry的key。 options可选-
一个包含以下属性的选项对象
info可选-
要传递给
navigate事件的开发者定义的信息,可在NavigateEvent.info中访问。这可以是任何数据类型。例如,您可能希望根据内容的导航方式(左滑、右滑或主页)以不同的动画显示新导航的内容。可以将指示使用哪种动画的字符串作为info传递。
返回值
具有以下属性的对象:
committed-
一个
Promise,当可见 URL 已更改且已创建新的NavigationHistoryEntry时,它将fulfilled。 finished-
一个
Promise,当intercept()处理程序返回的所有 Promise 都 fulfilled 时,它将 fulfilled。这相当于NavigationTransition.finishedPromise fulfilled,当navigatesuccess事件触发时。
如果导航因某种原因失败,则这两个 Promise 中的任何一个都会 rejected。
异常
InvalidStateErrorDOMException-
如果
Navigation.currentEntry的NavigationHistoryEntry.index值为 -1,意味着当前的Document尚未激活,或者导航历史列表不包含具有指定 key 的NavigationHistoryEntry,或者当前的Document正在卸载,则会抛出此异常。
示例
设置主页按钮
js
function initHomeBtn() {
// Get the key of the first loaded entry
// so the user can always go back to this view.
const { key } = navigation.currentEntry;
backToHomeButton.onclick = () => {
navigation.traverseTo(key);
};
}
// Intercept navigate events, such as link clicks, and
// replace them with single-page navigations
navigation.addEventListener("navigate", (event) => {
event.intercept({
async handler() {
// Navigate to a different view,
// but the "home" button will always work.
},
});
});
规范
| 规范 |
|---|
| HTML # dom-navigation-traverseto-dev |
浏览器兼容性
加载中…