为什么需要onRoute函数?
2018-12-03 本文已影响66人
前端来入坑
小程序生命周期函数有:
函数 说明
- onLoad 页面加载事件
- onShow 页面显示事件
- onReady 页面初次渲染完成事件
- onHide 页面隐藏事件
- onUnload 页面卸载事件
那么问题来了,页面之间的跳转事件应该写在哪个方法里呢?比如有需求,需要在页面跳转后重置当前页面数据。写在onShow事件里?
写在onShow事件里的确可以,但是要考虑到一些特殊操作同样会触发onShow事件,比如 拉起分享后取消分享,拉起支付后取消支持,手机HOME键返回再进入等等。
如果不介意在做这个动作的时候多调一次onShow事件,那使用onShow肯定没有问题。
wepy中onRoute事件就是为了解决这个问题,只有在页面路由时才会触发(包括第一次进入页面)。加入onRoute后的生命周期事件调用时序为:
onLoad -> onShow -> onRoute -> onReady -> onUnload