阅读(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
        });
    }
});