微信小程序学习之navigate(1)navigateTo方法与navigateBack方法对于page生命周期不同的触发影响...

小程序的每个页面都有一些生命周期,每个生命周期由分别有着不同的生命周期钩子函数。而我们的业务逻辑写在这些生命周期的钩子函数中,那么弄清楚那种情形下会触发那些生命周期钩子函数就非常重要了

先上一段代码

Page({
    data: {
        banner: [
            "../../assets/img/banner.jpg",
            "../../assets/img/banner2.jpg",
            "../../assets/img/banner3.jpg",
        ],
        list:[1,2,3,4,5,6,7],
    },
    //页面加载
    onLoad: function () {
      console.log("触发首页加载周期")
        
    },
    //页面渲染
    onReady() {
      console.log("触发首页页面渲染周期")
      
    },
    //页面显示
    onShow() {
      console.log("触发首页页面显示周期")
      // wx.navigateTo({
      //   url: "../test/test",
      // })
    },
    //页面隐藏
    onHide() {
        console.log("触发首页页面隐藏周期");
    },
    login(){
    }
})

上面这一坨就是页面常用的生命周期钩子函数,还有一些没有写出来,想要了解的可以去微信的官方文档看看:https://developers.weixin.qq.com/miniprogram/dev/api/route/wx.redirectTo.html

第一种情况

当页面首次加载的时候触发的生命周期有

离开当前页面的时候

第二种情况

当其他页面使用navigateTo 回到当前页面时

使用

wx.redirectTo 回到当前页面效果与wx.navigateTo相同
wx.reLunch 回到当前页面效果与上相同,但是会触发 发生跳转的页面的 页面卸载钩子函数

第三种情况

当其他页面使用navigateBack回到当前页面时 

就只会触发 onShow()生命周期函数 switchTab与其相同 但是switchTab只能条tabbar页面

所以每次进入页面都要触发的业务逻辑个人推荐的写法是使用navigateTo而非navigateBack

 

转载于:https://www.cnblogs.com/wrhbk/p/11125384.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值