使用 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>