页面跳转的几种用法区别

一. my.navigateTo: 保留当前页面,跳转到应用内的某个页面,路径后可带参数;使用 abridge.navigateBack 可以返回到原页面; 示例代码: 

 my.navigateTo({
      url: 'test?id=1'
    })

 二. my.redirectTo: 关闭当前页面,跳转到应用内的某个页面,路径后可带参数,但是不能返回原页面; 示例代码: 

my.redirectTo({
      url: 'test?id=1'
    })

  三. my.navigateBack: 关闭当前页面,返回上一页面或多级页面;可通过 Page.getCurrentPages 获取当前的页面栈,决定需要返回几层;返回的页面数,如果 delta 大于现有页面数,则返回到首页。 示例代码:  

// 注意:调用 navigateTo 跳转时,调用该方法的页面会被加入堆栈,而 redirectTo 方法则不会。见下方示例代码 
// 此处是A页面
    my.navigateTo({ url: 'B?id=1' }) 
// 此处是B页面 
    my.navigateTo({ url: 'C?id=1' }) 
// 在C页面内 navigateBack,将返回A页面 
    my.navigateBack({ delta: 2 }) 
// 在C页面内 navigateBack,将返回A页面
     my.navigateBack({ delta: 2 })

  四. my.switchTab: 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面;跳转的页面需要在app.json的tabBar中声明的页面且路径后不能带参数 app.json代码示例: 

// app.json
 { "tabBar": 
 { "items": 
 [{ "pagePath": "home", "name": "首页" },
 { "pagePath": "user", "name": "用户" }
 ] } }

  示例代码:  

 my.switchTab({
      url: '/home'
    })

 注意: 

1. 通过页面跳转或者页面重定向所到达的页面,即使它是定义在 tabBar 配置中的页面,也不会显示底部的 tab 栏;

 2. 调用 navigateTo 跳转时,调用该方法的页面会被加入堆栈,而 redirectTo 方法则不会;

 3. my.navigateTo 和 my.redirectTo 不允许跳转到 tabbar 页面,只能用 my.switchTab 跳转到 tabbar 页面; 

4.my.switchTab跳转的页面需要在app.json的tabBar中声明的页面且路径后不能带参数; 如还有遗漏请留言补充,我会尽快更新,如果官方有新的内容我会及时关注更新,谢谢各位看官啦!

上一篇:25 行 Python 代码实现人脸检测——OpenCV 技术教程


下一篇:Linux文件操作