NavigateEvent:info 属性

Limited availability

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

实验性: 这是一项实验性技术
在将其用于生产之前,请仔细检查浏览器兼容性表格

NavigateEvent 接口的 info 只读属性返回启动导航操作传递的 info 数据值(例如 Navigation.back()Navigation.navigate()),如果没有传递 info 数据,则返回 undefined

启动导航操作传递的 info 值,如果没有传递则为 undefined

示例

info 的一个使用示例是,根据到达特定路线的方式触发不同的单页导航渲染。例如,考虑一个照片库应用,你可以通过各种路线到达相同的照片网址和状态。你可能希望使用不同的动画来显示每个路线的照片。

js
navigation.addEventListener("navigate", (event) => {
  if (isPhotoNavigation(event)) {
    event.intercept({
      async handler() {
        switch (event.info?.via) {
          case "go-left": {
            await animateLeft();
            break;
          }
          case "go-right": {
            await animateRight();
            break;
          }
          case "gallery": {
            await animateZoomFromThumbnail(event.info.thumbnail);
            break;
          }
        }

        // TODO:实际加载照片。
      },
    });
  }
});

规范

Specification
HTML
# dom-navigateevent-info-dev

浏览器兼容性

BCD tables only load in the browser

参见