三、自定义指令中的生命周期钩子函数
指令定义对象可以提供如下几个钩子函数(按需引入)
-
created :绑定元素属性或事件监听器被应用之前调用。该指令需要附加需要在普通的 v-on 事件监听器前调用的事件监听器时,这很有用。
-
beforeMounted :当指令第一次绑定到元素并且在挂载父组件之前执行。
-
mounted :绑定元素的父组件被挂载之后调用。
-
beforeUpdate :在更新包含组件的 VNode 之前调用。
-
updated :在包含组件的 VNode 及其子组件的 VNode 更新后调用。
-
beforeUnmounted :在卸载绑定元素的父组件之前调用
-
unmounted :当指令与元素解除绑定且父组件已卸载时,只调用一次。
一、注册一个全局的自定义指令,创建一个文件夹 busDirective > index.js
export default {
install(app) {
app.directive('color', { // color 是指令的名字
created(el, binding) { // el 是当前绑定的元素,binding 是一个对象
console.log(binding.value);
el.style.backgroundColor = binding.value // binding.value 就是指令绑定的内容,也是等号里面的值
},
updated(el