400 028 6601

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

创新互联百度小程序教程:路由方式

路由方式

页面栈

框架以栈的形式维护了当前的所有页面。 当发生路由切换的时候,页面栈的表现如下:

创新互联自2013年起,先为防城等服务建站,防城等地企业,进行企业商务咨询服务。为防城企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

路由方式 页面栈表现
初始化 新页面入栈
打开新页面 新页面入栈
页面重定向 当前页面出栈,新页面入栈。
页面返回 页面不断出栈,直到目标返回页。
Tab 切换 页面全部出栈,只留下新的 Tab 页面。

getCurrentPages()

getCurrentPages() 函数用于获取当前页面栈的实例,以数组形式按栈的顺序给出,第一个元素为首页,最后一个元素为当前页面。

代码示例

在开发者工具中打开

在开发者工具中打开

在 WEB IDE 中打开

页面切换路径过多,详细示例请在开发者工具中的控制台查看。

Tip:

不要尝试修改页面栈,会导致路由以及页面状态错误。

路由方式

对于路由的触发方式以及页面生命周期函数如下:

路由方式 触发时机 路由前页面 路由后页面
初始化 智能小程序打开的第一个页面 onLoad, onShow
打开新页面 调用 API swan.navigateTo 或使用组件 < navigator open-type=”navigateTo”/ > onHide onLoad, onShow
页面重定向 调用 API swan.redirectTo 或使用组件 < navigator open-type=”redirectTo”/ > onUnload onLoad, onShow
Tab 切换 调用 API swan.switchTab 或使用组件 < navigator open-type=”switchTab”/ > 或用户切换 Tab 各种情况请参考下表
页面返回 调用 API swan.navigateBack 或使用组件 < navigator open-type=”navigateBack”/ > 或用户按左上角返回按钮 onUnload onShow
重启动 调用 API swan.reLaunch 或使用组件 < navigator open-type=”reLaunch”/ > onUnload onLoad, onShow

同时点击页面重定向和重启动跳转到下一个页面后无法返回。

Tab 切换对应的生命周期(以 A、B 页面为 Tabbar 页面,C 是从 A 页面打开的页面,D 页面是从 C 页面打开的页面为例):

当前页面 路由后页面 触发的生命周期(按顺序)
A A Nothing happend
A B A.onHide(), B.onLoad(), B.onShow()
A B(再次打开) A.onHide(), B.onShow()
C A C.onUnload(), A.onShow()
C B C.onUnload(), B.onLoad(), B.onShow()
D B D.onUnload(), C.onUnload(), B.onLoad(), B.onShow()
D(从转发进入) A D.onUnload(), A.onLoad(), A.onShow()
D(从转发进入) B D.onUnload(), B.onLoad(), B.onShow()

代码示例

在开发者工具中打开

在开发者工具中打开

在 WEB IDE 中打开

建议在开发者工具中的控制台查看,工具与真机略有差异,以真机的生命周期为准。

说明

代码示例

 
 
 
  1. // 目标页面
  2. Page({
  3. // 在 onLoad 中获取
  4. onLoad: function (options) {
  5. console.log(options);
  6. },
  7. // 在 onShow 中获取
  8. onShow: function() {
  9. // 获取当前小程序的页面栈
  10. let pages = getCurrentPages();
  11. // 数组中索引最大的页面--当前页面
  12. let currentPage = pages[pages.length - 1];
  13. // 打印出当前页面中的 options
  14. console.log(currentPage.options);
  15. }
  16. });

新闻名称:创新互联百度小程序教程:路由方式
文章分享:http://www.bluegullmedia.com/article/dpcjdso.html

其他资讯

让你的专属顾问为你服务

0.0386s