阅读(2064)
赞(9)
百度智能小程序 保留当前页面
2020-08-13 15:29:07 更新
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 |
否 |
接口调用结束的回调函数(调用成功、失败都会执行) |
示例
代码示例
<view class="wrap">
<button bind:tap="navigateTo" type="primary" hover-stop-propagation="true">跳转新页面</button>
</view>
Page({
navigateTo(e) {
swan.navigateTo({
url: '/detail/detail?id=新页面'
});
}
});
Bug & Tip
- jssdk 在 web-view 组件中使用 swan.navigateTo 接口跳转 success、fail、complete 回调函数不显示。
参考示例
参考示例 - 根据页面栈来判断页面层级
// 目标页面
Page({
onLoad(options) {
this.setData({
'id': options.id
});
},
onShow() {
console.log(getCurrentPages()); // [{uri: 'index/index'}]
},
navigateBack(e) {
swan.navigateBack({
delta: 2
});
}
});