生命周期

this上下文

自动指向当前调用它的组件实例。

避免用箭头函数来定义生命周期,否则无法通过this获取组件实例

API

所有API都在setup()之后调用

beforeCreate

组件实例初始化完成后立即调用,props解析后

created

此时已完成:响应式数据、计算属性、方法、侦听器
$el属性不可用

beforeMount

在组件被挂载之前,即将首次执行DOM渲染过程

mounted

挂载之后调用

组件在以下情况视为已挂载:

  • 所有同步子组件已经被挂载
  • 其自身的DOM树已经创建完成并插入了父容器中

通常用于执行需要访问组件所渲染的DOM树相关的副作用

😩 服务端渲染时不会被调用

beforeUpdate

在组件,响应式状态变更,更新其DOM树之前调用
在Vue更新DOM之前访问DOM状态。

😩 服务端渲染时不会被调用

updated

响应式变更,更新其DOM树之后调用

  • 父组件的updated在其子组件的updated之后调用
  • 在组件的任意DOM更新后调用
  • 和nextTick的关系?

❗ 都是数据修改后,可以获取新数据。nextTick在渲染前,updated在渲染后

beforeUnmount

在一个组件实例被卸载之前调用
当被调用时,组件实例依然还保有全部的功能

unmounted

在一个组件实例被卸载之后调用
以下情况被视为已卸载:

  • 其所有子组件都已经被卸载
  • 所有相关的响应式作用(计算属性,侦听器)都已经停止

可以在本钩子,手动清理一些副作用,例如计时器、DOM事件监听器,与服务器的连接

errorCaptured

在捕获了后代组件传递的错误时调用

错误捕获来源:

  • 组件渲染
  • 事件处理器
  • 生命周期钩子
  • setup()函数
  • 侦听器
  • 自定义指令钩子
  • 过度钩子

三个参数:

  • 错误对象
  • 触发该错误的组件实例
  • 说明错误来源类型的信息字符串
posted @ 2023-01-29 16:36  一个斯帕纳  阅读(25)  评论(0)    收藏  举报