vue自定义指令

78 阅读1分钟

注册

全局注册

Vue.directive( id, [definition] )

  • 参数: {string} id
    {Function | Object} [definition]\

Vue.directive('my-directive', { 
bind: function () {...},//指令第一次绑定到元素上时调用,只调用一次,可以执行初始化操作
inserted: function () {...},//指令所绑定的元素插入到DOM中时调用
update: function () {...},//被绑定元素所在模板更新时调用
componentUpdated: function () {...},//被绑定元素所在模板完成一次更新周期时调用
unbind: function () {...} //指令与元素解绑时调用,只执行一次
})

Vue.directive('my-directive', function () { 
        // 这里将会被 `bind` 和 `update` 调用
    }
)

局部注册

在vue内添加directive属性 和methods同级

directives:{
               //自定义局部指令foc
                foc:{
                     inserted(el){
                        el.focus();    //实现被绑定该指令的文本框自动获得焦点
                    }
                }
           },