一、应用生命周期(写在app.vue中)
onLaunch:当整个项目启动,渲染完成时触发(全局只触发一次)
onShow:小程序显示出来(从后台进入前台显示,可以触发多次)
onHide:小程序隐藏起来时触发(从前台进入后台,可以触发多次)
onError: 出现异常时触发
二、页面生命周期
onLoad 监听页面加载,其参数为上个页面传递的数据,参数类型为 Object(用于页面传参)
onShow 监听页面显示。页面每次出现在屏幕上都触发,包括从下级页面点返回露出当前页面
onReady 监听页面初次渲染完成。注意如果渲染速度快,会在页面进入动画完成前触发
onHide 监听页面隐藏,通过tabbar切换页面,也是隐藏而不是卸载
onUnload 监听页面卸载
onPullDownRefresh 监听用户下拉动作,一般用于下拉刷新。前提开启下拉刷新。
下拉刷新开启:pages.json中全局配置,或者页面的style中配置或通过 uni.startPullDownRefresh()方法
下拉刷新关闭:uni.stopPullDownRefresh()
onReachBottom:上拉加载,页面滚动到底部的事件,在事件中可以加载下一页数据
在pages.json中的页面style中,通过onReachBottomDistance可以
配置页面上拉触底事件触发距页面底部的距离,默认50px
三、组件生命周期
beforeCreate(): 在实例初始化之后被调用,此时data中的数据还是undefined
created(): 在实例创建完成后被立即调用。此时data中的数据和基本方法都可以访问了
beforeMount(): 在挂载开始之前被调用.
mounted(): 挂载到实例上去之后调用,注意:此处并不能确定子组件被全部挂载,如果需要子组件
完全挂载之后在执行操作可以使用$nextTick
beforeUpdate(): 数据更新时调用,发生在虚拟 DOM 打补丁之前
updated(): 由于数据更改导致的虚拟 DOM 重新渲染和打补丁
beforeDestroy: 实例销毁之前调用
destroyed(): Vue 实例销毁后调用。