Heim  >  Artikel  >  Web-Frontend  >  Benutzerdefinierte Direktivenmethode von Vue.js

Benutzerdefinierte Direktivenmethode von Vue.js

一个新手
一个新手Original
2017-09-25 10:06:411570Durchsuche
  • Zusätzlich zu den standardmäßigen Kernanweisungen (v-model und v-show) ermöglicht Vue auch die Registrierung benutzerdefinierter Anweisungen.

  • Registrieren Sie eine globale Direktive v-focus. Die Funktion dieser Direktive besteht darin, das Element zu fokussieren, wenn die Seite geladen wird >

  • Sie können die Option „Anweisungen“ auch in der Instanz verwenden, um lokale Anweisungen zu registrieren, sodass die Anweisungen nur in dieser Instanz verwendet werden können
<p id="app">
    <p>页面载入时,input 元素自动获取焦点:</p>
    <input v-focus></p><script>// 注册一个全局自定义指令 v-focusVue.directive(&#39;focus&#39;, {  // 当绑定元素插入到 DOM 中。
  inserted: function (el) {
    // 聚焦元素
    el.focus()
  }
})// 创建根实例var a = new Vue({
  el: &#39;#app&#39;})</script>
  • Wird von der Befehlsdefinitionsfunktion bereitgestellt. Mehrere Hook-Funktionen (optional)
<p id="app">
  <p>页面载入时,input 元素自动获取焦点:</p>
  <input v-focus></p><script>// 创建根实例new Vue({
  el: &#39;#app&#39;,
  directives: {    // 注册一个局部的自定义指令 v-focus
    focus: {      // 指令的定义
      inserted: function (el) {
        // 聚焦元素
        el.focus()
      }
    }
  }
})</script>
  • Hook-Funktionsparameter
bind: 只调用一次,指令第一次绑定到元素时调用,用这个钩子函数可以定义一个在绑定时执行一次的初始化动作。
inserted: 被绑定元素插入父节点时调用(父节点存在即可调用,不必存在于 document 中)。
update: 被绑定元素所在的模板更新时调用,而不论绑定值是否变化。通过比较更新前后的绑定值,可以忽略不必要的模板更新(详细的钩子函数参数见下)。
componentUpdated: 被绑定元素所在模板完成一次更新周期时调用。
unbind: 只调用一次, 指令与元素解绑时调用。

Das obige ist der detaillierte Inhalt vonBenutzerdefinierte Direktivenmethode von Vue.js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn