vue自定义指令 --directive 2018-11-05

1)Vue.directive('自定义指令的名字',{

            inserted:function(el){  /*这个元素插入父元素的时候执行的操作*/

                el.focus();

            }

})

2)

directives:{

                  'focus':{

                        inserted:function(el){  /*这个元素插入父元素的时候执行*/

                            el.focus();

                        }

                    }

                }


vue自定义指令 --directive 2018-11-05_第1张图片

钩子函数

bind: 只调用一次,指令第一次绑定到元素时调用,用这个钩子函数可以定义一个在绑定时执行一次的初始化动作。

inserted: 被绑定元素插入父节点时调用。(bind与该生命周期钩子函数作用十分类似)

update: 被绑定元素所在的模板更新时调用,而不论绑定值是否变化。通过比较更新前后的绑定值,可以忽略不必要的模板更新。

componentUpdated: 被绑定元素所在模板完成一次更新周期时调用。




简写形式

1)

Vue.directive('bgcolor',function(el,binding){

            el.style.background=binding.value;

})

2)directives:{

              /*简写 表示bind 和update的时候都会执行*/

                    'color':function(el,binding){ 

                        el.style.color=binding.value;

                    }

          }

例如下面将用自定义redirective实现拖拽:

    

拖拽

    

//能拖拽的标签,我没有写它的样式

    

    

你可能感兴趣的:(vue自定义指令 --directive 2018-11-05)