swan.navigateTo
- 以下 5 个 API 都有与之功能一致的 navigator 组件 声明方式。
- 如果两种方式都能满足您的使用场景,推荐您使用 navigator 组件 实现相应的导航功能,以便更好的被搜索引擎理解。
解释:保留当前页面,跳转到应用内的某个页面,但是不能跳转到 tabbar 页面,使用 swan.navigateBack 可以返回到原页面。
方法参数
Object object
object参数说明
属性名 | 类型 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
url | String | 是 | 需要跳转的应用内非 tabBar 的页面的路径 , 路径后可以带参数。参数与路径之间使用?分隔,参数键与参数值用=相连,不同参数用&分隔;如 ‘path?key=value&key2=value2’。 | |
success | Function | 否 | 接口调用成功的回调函数 | |
fail | Function | 否 | 接口调用失败的回调函数 | |
complete | Function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
示例
扫码体验
请使用百度APP扫码
代码示例
<view class="wrap">
<button bind:tap="navigateTo" type="primary" hover-stop-propagation="true">跳转新页面</button>
</view>
Page({
data: { },
navigateTo(e) {
swan.navigateTo({
url: '/detail/detail?id=新页面'
});
}
});
参考示例
参考示例 - 根据页面栈来判断页面层级
// 目标页面
Page({
onLoad(options) {
this.setData({
'id': options.id
});
},
onShow() {
console.log(getCurrentPages()); // [{uri: 'index/index'}]
},
navigateBack(e) {
swan.navigateBack({
delta: 2
});
}
});
Bug & Tip
jssdk 在 web-view 中使用 swan.navigateTo 接口跳转 success、fail、complete 回调函数不显示。