组件周期函数
_init
组件初始化的时候调用,此时组件还没开始渲染。我们我可以在该周期中做组件数据初始化的工作,绑定事件,注入变量用于模板渲染等等。该生命周期可以返回Promise
来支持异步组件。
_beforeCreate @since v2.4.1
组件初始化完成后,准备渲染DOM之前,会执行该生命周期函数。此时,组件实例具有vNode
parentVNode
属性,可以通过它来操作VNode
对象,但是没有DOM
对象,所以不要在该周期函数中操作DOM
。该周期函数后端渲染情况下也会执行
_create
组件渲染完成模板渲染后,就会调用该生命周期。此时,组件具有element
属性,指向组件渲染的DOM元素,但此时DOM并没有挂载。
_mount
组件被挂载后,该生命周期函数会被调用
_beforeUpdate
组件渲染完成后,如果触发更新操作,就会执行_beforeUpdate,在DOM还没有渲染时,所有的update动作都不会调用该生命周期函数。
_update
_beforeUpdate调用后,就会执行_update,此时组件更新完成。
_destroy
组件被销毁后,会执行_destroy,在这里可以做一些组件清理工作。组件销毁时,会递归清理所有的子组件,解绑所有事件。
上述周期函数是Intact提供的接口,另外Intact和底层与虚拟DOM打交道时,也有周期函数的概念,它们分别为
init
,mount
,update
,destroy
,需要注意的是,它们和上面的周期函数接口并非一一对应,在这里提出来,是为了防止组件自定义函数与它们命名冲突,你也可以直接调用它们完成一些特定工作。