自定义组件的生命周期
Max Zhang Lv4

自定义组件的生命周期

小程序中的自定义组件有自己的生命周期,包括createdattachedreadymoveddetached等阶段。

注意:自定义组件的生命周期需要写在组件的.js文件的lifetimes字段中,而不是methods字段中。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Component({
lifetimes: {
created() {
console.log("created");
},
attached() {
console.log("attached");
},
ready() {
console.log("ready");
},
moved() {
console.log("moved");
},
detached() {
console.log("detached");
},
error() {
console.log("error");
},
},
});

created

  • created生命周期是在组件实例刚刚被创建时执行的,此时组件的属性和方法还没有初始化完成。
  • 此时还不能进行页面节点的操作或调用需要节点信息的 API,如节点查询(wx.createSelectorQuery())。

attached

  • attached生命周期是在组件实例进入页面节点树时执行的。
  • 此时可以进行页面节点的操作,但无法保证节点完全渲染完毕。
  • 通常在这个生命周期中可以进行一些初始化操作,如获取节点信息、绑定事件等。

ready

  • ready生命周期是在组件布局完成后执行的。
  • 此时可以获取组件的尺寸、位置等信息,用于进行 DOM 操作或动画等。

moved

  • moved生命周期是在组件实例被移动到另一个位置时执行的。

detached

  • detached生命周期是在组件实例被从页面节点树移除时执行的。
  • 可以在这里进行清理工作,如移除定时器等。

error

  • error生命周期是在组件发生错误时执行的。
 评论
评论插件加载失败
正在加载评论插件