开发
API

tt.navigateTo

基础库 1.0.0 版本开始支持本方法。

保留当前页面,跳转到应用内的某个页面,但是不能跳转到 tabbar 页面,使用 tt.navigateBack 可以返回到原页面。

语法

tt.navigateTo(options)

参数说明

options 是 object 类型,属性如下:

属性名类型默认值必填说明最低支持版本
urlstring需要跳转的应用内非 tabBar 的页面的路径 , 路径后可以带参数。参数与路径之间使用?分隔,参数键与参数值用=相连,不同参数用&分隔;如 ‘path?key=value&key2=value2’1.0.0
successFunction接口调用成功的回调函数1.0.0
failFunction接口调用失败的回调函数1.0.0
completeFunction接口调用结束的回调函数(调用成功、失败都会执行)1.0.0

回调成功

object 类型,属性如下:

属性类型说明最低支持版本
errMsgstring"navigateTo:ok"1.0.0

回调失败

object 类型,属性如下:

属性类型说明最低支持版本
errMsgstring"navigateTo:fail" + 错误信息1.0.0

错误码

errNoerrMsg说明最低支持版本
20000navigateTo:fail params.url should be string, but got undefined参数校验错误2.28.0
20000navigateTo:fail params.url should be string, but got ${url}参数校验错误2.28.0
20000navigateTo:fail url is invalidurl 参数错误2.28.0
21101navigateTo:fail Count of page jump is more then 10 times跳转超过最大页面栈层数2.28.0
21102navigateTo:fail Can only jump to non-tab pages不允许跳转到 tab 页面2.28.0
21103navigateTo:fail Full screen player exists全屏播放器状态下不允许跳转2.28.0
21500navigateTo:fail illegal content found未通过敏感词检测2.28.0
21500navigateTo:fail url "${removeHtmlSuffixFromUrl(url)}" is not in app.json页面未在 app.json 中配置2.28.0
21500navigateTo:fail this page has been blocked跳转的页面是屏蔽页面2.28.0

效果示例

扫码体验

请使用字节宿主APP扫码

代码示例

开发者工具中预览

// pages/list
Page({
  onItemClick(event) {
    var sku = event.target.dataset.sku;
    tt.navigateTo({
      url: `/pages/detail/detail?sku=${sku}`,
      success(res) {
        console.log(res);
      },
      fail(res) {
        console.log("navigateTo调用失败");
      },
    });
  },
});
// pages/detail
Page({
  onLoad(options) {
    console.log(options.sku);
  },
});

Bug & Tip

  • Tip: 使用navigator组件也可以实现一样的功能。
  • Tip: 小程序页面栈中最多能有 10 个页面,超过 10 个后,navigateTo 会失败。
点击纠错
评价此篇文档