1.全局指令
el:指令绑定到的DOM元素,可以用于直接操作当前元素,默认传入钩子的就是el参数,例如我们开始实现的focus指令,就是直接操作的元素DOM
binding:这是一个对象,包含以下属性:
value:在元素上使用指令时,传递给指令的值。例如:
<div v-reserve:fo.bb="hello">456789</div>
传递给reserve指令的值就是hello,我们可以拿到值并做相关处理
oldValue:之前的值,一般用于beforeUpate和updated钩子函数中,例如:beforeUpdate(el, {oldValue: ‘’})
arg:传递给指令的参数,非必需,例如
modifiers:一个由修饰符构成的对象,例如
app.directive('reserve', {mounted(el, binding) {console.log(el,binding);}
})
2.局部指令
<el-input v-model="hello" ref="inputRef2" v-focus:inputRef='2'></el-input>const vFocus = {mounted: (el:any,binding:any) => {console.log("%c 🅿️: binding ", "font-size:16px;background-color:#ee4f91;color:white;",el,binding)}
}