vue的自定义指令。directive

在vue中有很多vue自带的指令,比如v-heml、v-for、v-if,v-on、v-bind、v-else、v-show。

但是这些指令还不够我们使用的。就有了directive这个对象。

这个使使用起来也很简单

全局指令创建

 组件里的指令

上面是简单的使用。接下来我们来看一下,他的几个钩子函数

bind:只调用一次,在指令第一次绑定到元素的时候,调用

inserted:  被绑定元素插入到父组件的时候调用

Update:所在组件Vnode(虚拟DOm的一种叫法)更新时调用,但是可能会在子Vnode更新之前

componetUpdate: 所在组件的Vnode和子的vnode全部更新后调用。

unbind:  调用一次,与元素解绑的时候调用。

这里的钩子函数有点像vue的生命周期的感觉。

在下面就是说一下这些钩子函数的参数

el: 进行绑定的元素,可以直接操作Dom

binding:  一个对象,包含了一些属性

  name:,创建的指令名。不包含v-

  value:所绑定的值

  oldvalue: 绑定的前一个值仅在  update 和 componentUpdated 钩子中可用。无论值是否改变都可用。

  expression: 字符串形式的指令表达式。

  arg:    传给指令的参数

  modifiers:  一个包含修饰符的对象。

Vnode:  :Vue 编译生成的虚拟节点。

oldVnode    上一个虚拟节点,仅在 update 和 componentUpdated 钩子中可用。

猜你喜欢

转载自www.cnblogs.com/chenyudi/p/12596080.html