• 欢迎访问1024小神,一个只会Python的程序猿不是一个好司机
  • 有什么想对我说的可以在留言板里给我留言哦~
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏1024小神吧

vue中如何自定义指令?

OtherAbout 1024小神 1年前 (2020-06-21) 177次浏览

vue中如何自定义指令?

除了核心功能默认内置的指令 (v-model 和 v-show),Vue 也允许注册自定义指令。下面我们就来看一下在vue中如何自定义指令。

使用 Vue.directive(id, [definition]) 定义全局的指令来进行自定义指令

参数1 : 指令的名称,注意,在定义的时候,指令的名称前面,不需要加 v-前缀,但是: 在调用的时候,必须在置顶的名称前加上 v-前缀来进行调用

参数2: 是一个对象, 这个对象身上,有一些指令相关的函数,这些函数可以在特定的阶段,执行相关的操作。

Vue.directive("focus", {
            // 注意:在每个函数中, 第一个参数永远是el, 表示被绑定了指令的那个元素,这个el参数,是一个原生的JS对象
            bind: function(el){ // 每当指令绑定到元素上的时候,会立即执行这个bind函数,只执行一次

            },
            inserted: function(el){ // inserted 表示元素插入到DOM中的时候,会执行inserted函数【触发一次】
                el.focus()
            },
            updated: function(el) { // 当VNode更新的时候,会执行updated,可能会触发多次
                
            },
        })

调用:

<!-- 注意: Vue中所有的指令,在调用的时候,都以 v- 开头 -->
                    <input type="text" class="form-control" v-model="keywords" v-focus>

如有失效,请留言告知丨转载请注明原文链接:vue中如何自定义指令?
点赞 (0)