Vue自定义指令

自定义指令的写法:将组件写法中的component改为directive;

自定义指令选项是有几个钩子组成的,每个都是可选的。

  • bind:只调用一次,指令第一次绑定到元素时调用,用的这个钩子函数可以定义在一个绑定时执行的初始化动作;
  • inserted:被绑定元素插入父节点是调用(父节点存在即可调用,不必存在于document中)
  • update:被绑定元素所在的模板更新时调用,而不论绑定值是否变化。通过比较更新前后的绑定值,可以忽略不必要模板的更新。
  • componentUpdated;被绑定元素所在模板完成一次更新周期时调用
  • unbind:只调用一次,指令与元素解绑时调用

每个钩子函数都有几个元素可用:

  1. el:指令所绑定的元素,可以用来直接操作DOM
  2. binding:一个对象,包含以下属性:
  • name:指令名,不包括v-去前缀
  • value:指令的绑定值
  • oldValue:指令绑定的前一个值,只有在update和componentUpdated钩子中可以用。无论值是否改变都可用
  • expression:绑定值的字符串形式
  • arg:传给指令的参数
  • modifiers:一个包含修饰符的对象。

    3.vnode:Vue编译生成的虚节点

    4.oldVnode:上一个虚节点,只有在update和componentUpdated中可以用

你可能感兴趣的:(Vue)