1.自定义指令是什么?
自定义指令是什么?类似于vue中的v-for v-if v-model...类似的指令语法,自定义指令是自己注册的指令
为什么使用自定义指令?对于现有的指令需求达不到目的,有时候需要对DOM进行其他操作,用自定义扩展更多的功能
2.vue2使用自定义指令
组件中注册:
全局注册:
3.vue3的写法
全局:
3.区别
vue2.0中和vue3.0中 自定义指令的原理是一致的,只是生命周期 钩子函数不同
vue2中绑定的钩子函数为
bind - 指令绑定到元素后发生。只发生一次。
inserted - 元素插入父 DOM 后发生。
update - 当元素更新,但子元素尚未更新时,将调用此钩子。
componentUpdated - 一旦组件和子级被更新,就会调用这个钩子。
unbind - 一旦指令被移除,就会调用这个钩子。也只调用一次。
vue3.0
将钩子函数的命名与生命周期的钩子函数命名相一致
bind → beforeMount
inserted → mounted
beforeUpdate:新的!这是在元素本身更新之前调用的,很像组件生命周期钩子。
componentUpdated → updated
beforeUnmount:新的!与组件生命周期钩子类似,它将在卸载元素之前调用。
unbind -> unmounted