小程序路由

小程序路由

1、路由管理
  • 在小程序中所有页面的路由全部由框架进行管理,框架以栈的形式维护了当前的所有页面。
2、栈(计算机术语)
  • 栈(stack)又名堆栈,它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。
  • 可进可出(进是添加,处删除),也就意味这小程序中可以跳转新页面,可以后退,但是不能前进
3、浏览器如何管理浏览记录
  • 浏览器以浏览新网页的形式将所有浏览都保留在历史记录,任何浏览都会保存,后退不会删除浏览器记录,也就意味着可以前进
场景
A页面    A页面进栈
A页面 -> B页面   B页面进栈
B页面 ->  C页面  C页面进栈
C页面后退    C页面出栈
B页面 ->  D页面   D页面进栈
[A,B,D]

D页面打开  A页面   在一个A页面进栈
4、getCurrentPages()
  • 该函数用于获取当前页面栈的实例,以数组形式按栈的顺序给出,第一个元素为首页,最后一个元素为当前页面。在小程序中栈最多只能维护10个数据
5、栈的表现
  • 打开新页面 -> 进栈
  • 后退 -> 当前页面出栈
  • 重定向 -> 当期页面出栈新页面入栈
  • 重加载 -> 页面全部出栈保留当期页面栈
  • Tab 切换 -> 页面全部出栈,只留下新的 Tab 页面
5、路由跳转方式
  • 在小程序中路由跳转方式有两种(组件跳转,api跳转)
跳转形式Api组件
打开新页面wx.navigateTo(‘路径’)<\navigator open-type=“navigateTo”/>
页面重定向wx.redirectTo<\navigator open-type=“redirectTo”/>
页面返回wx.navigateBack<\navigator open-type=“navigateBack”>
Tab 切换wx.switchTab<\navigator open-type=“switchTab”/>
重启动wx.reLaunch<\navigator open-type=“reLaunch”/>
注意:
  • navigateTo, redirectTo 只能打开非 tabBar 页面。
  • switchTab 只能打开 tabBar 页面。
  • reLaunch 可以打开任意页面。
  • 页面底部的 tabBar 由页面决定,即只要是定义为 tabBar 的页面,底部都有 tabBar。
  • 调用页面路由带的参数可以在目标页面的onLoad中获取
  • 页面只有在出栈后才会被卸载也就是执行onUnload, tab页面只有在程序卸载的时候才会卸载
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值