生命周期升级变化
| 2.x 生命周期 |
3.x 生命周期 |
执行时间说明 |
| beforeCreate |
setup |
组件创建前执行 |
| created |
setup |
组件创建后执行 |
| beforeMount |
onBeforeMount |
组件挂载到节点上之前执行 |
| mounted |
onMounted |
组件挂载完成后执行 |
| beforeUpdate |
onBeforeUpdate |
组件更新之前执行 |
| updated |
onUpdated |
组件更新完成之后执行 |
| beforeDestroy |
onBeforeUnmount |
组件卸载之前执行 |
| destroyed |
onUnmounted |
组件卸载完成后执行 |
| errorCaptured |
onErrorCaptured |
当捕获一个来自子孙组件的异常时激活钩子函数 |
其中,在3.x,setup 的执行时机比2.x的 beforeCreate和 created 还早,可以完全代替原来的这2 个钩子函数。
<keep-alive> 中的组件,两个生命周期钩子函数:
| 2.x 生命周期 |
3.x 生命周期 |
执行时间说明 |
| activated |
onActivated |
被激活时执行 |
| deactivated |
onDeactivated |
切换组件后,原组件消失前执行 |
使用 生命周期方法
import { defineComponent, onBeforeMount, onMounted } from 'vue'
export default defineComponent({
setup () {
console.log(1);
onBeforeMount( () => {
console.log(2);
});
onMounted( () => {
console.log(3);
});
console.log(4);
return {}
}
})