uni-app页面生命周执行期顺序

这里暂时不考虑应用生命周期

页面生命周期

  • onLoad:监听页面加载,其参数为上个页面传递的数据,参数类型为Object(用于页面传参)
  • onShow:监听页面显示。页面每次出现在屏幕上都触发,包括从下级页面点返回露出当前页面
  • onReady:监听页面初次渲染完成。注意如果渲染速度快,会在页面进入动画完成前触发
  • onHide:监听页面隐藏
  • onUnload:监听页面卸载

组件生命周期

  • beforeCreate:在实例初始化之后被调用
  • created:在实例创建完成后被立即调用
  • beforeMounte:在挂载开始之前被调用
  • mounted:挂载到实例上去之后调用
  • beforeUpdate:数据更新时调用,发生在虚拟 DOM 打补丁之前
  • updated:由于数据更改导致的虚拟 DOM 重新渲染和打补丁,在这之后会调用该钩子
  • beforeDestory:实例销毁之前调用。在这一步,实例仍然完全可用
  • destoryed:Vue 实例销毁后调用。

不包含组件的页面

onLoad -> onShow -> onReady

包含组件的页面

onLoad -> onShow -> beforeCreate -> created -> beforeMount -> mounted -> onReady

如果页面的组件还包含了其他的组件,参考Vue组件的生命周期顺序即可

从执行的顺序可以看出页面生命周期onReady总是最后一个执行

页面跳转

这里只考虑了navigateTo()redirectTo()

使用navigateTo()

onHide
从下一个页面返回
onShow

使用redirectTo()

onUnload -> beforeDestory -> destoryed

posted @ 2022-01-22 16:44  Fetch  阅读(1924)  评论(0编辑  收藏  举报