小程序中组件的生命周期
1. 组件的主要生命周期
组件的生命周期,指的是组件自身的一些函数,这些函数在特殊的时间点或遇到一些特殊的框架事件时被自动触发,其中,最重要的生命周期是 created、attached、detached,包含一个组件实例生命流程的最主要时间点
- 组件实例刚刚被创建好时,created 生命周期触发,此时还不能调用 setData,通常情况下,这个生命周期只应该用于给组件 this 添加一些自定义属性字段
- 在组件完全初始化完毕、进入页面节点树后,attached 生命周期被触发,此时,this.data已被初始化完毕,此时可以调用 setData,这个生命周期很有用,绝大多数初始化工作可以在这个时机进行
- 在组件离开页面节点树后,detached 生命周期被触发,退出一个页面时,如果组件还在页面节点树中,则detached 会被触发
生命周期 | 参数 | 描述 | 最低版本 |
created | 无 | 在组件实例刚刚被创建时执行 | 1.6.3 |
attached | 无 | 在组件实例进入页面节点树时执行 | 1.6.3 |
ready | 无 | 在组件在视图层布局完成后执行 | 1.6.3 |
moved | 无 | 在组件实例被移动到节点树另一个位置时执行 | 1.6.3 |
detached | 无 | 在组件实例被从页面节点树移除时执行 | 1.6.3 |
error | Object Error | 每当组件方法抛出错误时执行 | 2.4.1 |
生命周期方法可以直接定义在 Component 构造器的第一级参数中
自小程序基础库版本 2.2.3 起,组件的生命周期也可以在 lifetimes 字段内进行声明( 设置推荐的方式,其优先级最高)
示例代码如下:
Component({
lifetimes:{
attached(){},//在组件实例进入页面节点树时执行
detached(){},//在组件实例被从页面节点树移除时执行
},
// 以下是旧式的定义方式,可以保持对 < 2.2.3 版本基础库的兼容
attached(){}, // 在组件实例进入页面节点树时执行
detached(){}, // 在组件实例被从页面节点树移除时执行
})
【小程序中组件的生命周期】
推荐阅读
- 热闹中的孤独
- 一个小故事,我的思考。
- 家乡的那条小河
- 一个人的碎碎念
- 野营记-第五章|野营记-第五章 讨伐梦魇兽
- 昨夜小楼听风
- Shell-Bash变量与运算符
- JS中的各种宽高度定义及其应用
- 2021-02-17|2021-02-17 小儿按摩膻中穴-舒缓咳嗽
- 深入理解Go之generate