Vue3中自定义指令生命周期的变化及含义?

Vue3中自定义指令的生命周期发生了一些变化,大体上分为两类:钩子函数名称的变化和钩子函数参数的变化。

钩子函数名称的变化

Vue2中自定义指令有五个生命周期钩子函数:bind、inserted、update、componentUpdated、unbind。在Vue3中,这些钩子函数的名称发生了改变:

  • bind --> beforeMount
  • inserted --> mounted
  • update -->beforeUpdate
  • componentUpdated – updated
  • unbind -->unmounted
    -钩子函数参数的变化

在Vue2中,自定义指令的生命周期钩子函数有两个参数:el和binding。在Vue3中,生命周期钩子函数的参数发生了一些变化:

  • beforeMount和mounted:只有一个参数VNode
  • beforeUpdate和updated:只有两个参数,VNode和prevNode
  • unmounted:只有一个参数 VNode

其中,vnode表示虚拟节点,prevVnode表示更新前的虚拟节点。在beforeUpdate和updated这两个钩子函数中,可以通过比较vnode和prevVnode来判断指令绑定的属性是否被更新。

总的来说,Vue3中自定义指令生命周期的变化主要是为了与Vue3的组合式API更加契合,提高了代码的可读性和可维护性。

猜你喜欢

转载自blog.csdn.net/m0_68009075/article/details/130883408
今日推荐