生命周期函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了生命周期函数相关的知识,希望对你有一定的参考价值。

参考技术A onLoad函数对页面状态数据的初始化,是生命周期回调—监听页面加载。一 个页面只会调用一次。onLoad函数的参数可以接收打开当前页面所调用的 query参数。

当前页面跳转detail页面后,调用query参数id。

detail页面中onLoad函数可以获取传递的query参数id。

onLaunch:在小程序中加载执行,全局只触发一次。

onShow:在小程序中显示,监听小程序启动或切前台。

onHide:在小程序中隐藏,监听小程序切后台。

onError:小程序发生脚本错误时,或者API调用失败时,会触发onError并带上错误信息。

1. onLoad :首次进入页面加载时触发,可以在 onLoad 的参数中获取打开当前页面路径中的参数。

2. onShow :加载完成后、后台切到前台或重新进入页面时触发(页面显示)

3. onReady :页面首次渲染完成时触发

4. onHide :从前台切到后台或进入其他页面触发(页面隐藏)

5. onUnload :页面卸载时触发(页面卸载)

6.onPullDownRefresh:监听用户下拉动作(可以用来做下拉刷新功能)

7.onReachBottom:页面上拉触底事件的处理函数(用来做下拉加载更多功能)

8.onShareAppMessage:用户点击右上角转发

9.onPageScroll:页面滚动触发事件的处理函数

10.onResize:页面尺寸发生改变时触发。

页面生命周期小结

基本上加载一个小程序进来之后的执行顺序为 :

小程序切换后台:

Flutter生命周期

参考技术A

生命周期是一个从创建到销毁的过程,Flutter生命周期分为两部分:
1.Widget的生命周期
2.APP的生命周期

1.StatelessWidget
对于StatelessWidget来说,生命周期只有build过程。build是用来创建Widget的,在每次页面刷新时会调用build。

2.StatefulWidget
StatefulWidget的生命周期依次为:

createState是StatefulWidget来创建State的方法,只调用一次,

initState是StatefulWidget创建后调用的第一个方法,而且只执行一次。在执行initState时,View没有渲染,但是StatefulWidget 已经被加载到渲染树里了,这事的StatefulWidget的 mount 的值会变为true,知道dispose才会变为false.一般我们把初始化的一些操作都放在initState中。

didChangeDependencies会在initState后立即调用,之后只有当StatefulWidget依赖的InheritedWidget发生变化之后,didChangeDependencies才会调用,所以didChangeDependencies可以调用多次。

build方法会在didChangeDeoendencies之后立即调用,在之后setState()刷新时,会重新调用build绘制页面,所以build方法可以调用多次。但一般不再build中创建除创建Widget的方法,否则会影响渲染效率。

addPostFrameCallback是StatefulWidget渲染结束之后的回调,只会调用一次,一般是在initState里添加回调:,

一般在dispose中做一些取消监听、动画的操作,和initState相对使用。

AppLifecycleState就是App的生命周期,包含四个:

以上是关于生命周期函数的主要内容,如果未能解决你的问题,请参考以下文章

Vue生命周期简述

Vue生命周期简述

Vue生命周期函数详解

Rx 生命周期管理

4.Flutter生命周期与路由管理

Android 的生命周期