JS每日一题:小程序跳转页面有几种方式? 有什么不同?

栏目: JavaScript · 发布时间: 5年前

内容简介:小程序跳转页面有几种方式? 有什么不同?在小程序中每个页面可以看成是一个pageModel,pageModel全部以栈的形式进行管理(最多五层)在说跳转方式之前我们先来温习一下栈和堆的区别

20190228

小程序跳转页面有几种方式? 有什么不同?

在小程序中每个页面可以看成是一个pageModel,pageModel全部以栈的形式进行管理(最多五层)

在说跳转方式之前我们先来温习一下栈和堆的区别

管理方式不同

  • 栈是系统编译器启动管理,不需要 程序员 手动管理
  • 堆的释放由程序员手动管理,不及时回收容易产生内存泄露

分配方式不同

  • 栈有两种分配方式:静态分配和动态分配

    • 静态分配是系统编译器完成的,比如局部变量的分配
    • 动态分配是由alloc函数进行分配的,但是栈的动态分配和堆的动态分配是不同的,它的动态分配也由系统编译器进行释放,不需要程序员手动管理
  • 堆是动态分配和回收内存的,没有静态分配的堆

分配大小不同

  • 栈是向低地址扩展的数据结构,是一块连续的内存区域
  • 堆是向高地址扩展的数据结构,是不连续的内存区域

进入正题

小程序的路由跳转分为两种,组件跳转以及api跳转

api形式分为

  • navigateTo 保留当前页面,跳转到应用内的某个页面,使用wx.navigateBack可以返回到原页面
  • redirectTo 关闭当前页面,跳转到应用内的某个页面
  • switchTab 跳转到tabBar页面,同时关闭其他非tabBar页面
  • navigateBack 返回上一页面
  • reLanch 关闭所有页面,打开到应用内的某个页面

前面有提到栈,那么这些导航方式跟栈有什么关系呢,看下面

  • 初始化 新页面入栈
  • navigateTo 新页面入栈
  • redirectTo 当前页面出栈,新页面入栈
  • navigateBack 页面不断出栈,直到目标返回页,新页面入栈
  • switchTab 页面全部出栈,只留下新的 Tab 页面
  • reLanch 页面全部出栈,只留下新的页面

通过组件形式进行跳转

// navigator 组件默认的 open-type 为 navigate 
<navigator url="/page/navigate/navigate?title=navigate">跳转到新页面</navigator>

// 如需要其它形式进行跳转,可以更改open-type 属性以上api值
<navigator url="/page/navigate/navigate?title=navigate" open-type="switchTab">切换 Tab</navigator>

getCurrentPages

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

// Page A 跳转至Page B
wx.navigateTo({ url: '/pages/B/B' })

// Page B
const pages = getCurrentPages()
const perPage = pages[pages.length - 2] // 上一个页面
perPage.setData({
    title: 'JS每日一题'
})

总结

小程序页面由栈形式管理,最多为5层,在合理的场景使用合理的方式进行跳转

关于JS每日一题

JS每日一题可以看成是一个语音答题社区

每天利用碎片时间采用60秒内的语音形式来完成当天的考题

群主在次日0点推送当天的参考答案

  • 注 绝不仅限于完成当天任务,更多是查漏补缺,学习群内其它同学优秀的答题思路

点击加入答题


以上所述就是小编给大家介绍的《JS每日一题:小程序跳转页面有几种方式? 有什么不同?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

经济学原理(第7版):微观经济学分册+宏观经济学分册(套装共2册)

经济学原理(第7版):微观经济学分册+宏观经济学分册(套装共2册)

曼昆 (N.Gregory Mankiw) / 梁小民、梁砾 / 北京大学出版社 / 2015-5-1 / 128

《经济学原理(第7版):微观经济学分册+宏观经济学分册》是目前国内市场上最受欢迎的引进版经济学教材之一,其最大特点是它的“学生导向”,它更多地强调经济学原理的应用和政策分析,而非经济学模型。第7版在延续该书一贯风格的同时,对第6版作了全面修订和改进。大幅更新了“新闻摘录”“案例研究”等专栏,拓展了章后习题。一起来看看 《经济学原理(第7版):微观经济学分册+宏观经济学分册(套装共2册)》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

MD5 加密
MD5 加密

MD5 加密工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换