Heim  >  Artikel  >  Web-Frontend  >  Praktische Anleitung zur Verwendung von Vue-Komponenten

Praktische Anleitung zur Verwendung von Vue-Komponenten

php中世界最好的语言
php中世界最好的语言Original
2018-04-28 15:34:24939Durchsuche

Dieses Mal werde ich Ihnen die Vorsichtsmaßnahmen für die praktische Verwendung von Vue-Komponenten vorstellen.

1. Rekursive Komponenten

Eine Komponente kann sich in ihrer Vorlage einfach selbst aufrufen.

Ein Beispiel lautet wie folgt:

  <p id="app19">
   <my-component19 :count="1"></my-component19>
  </p>
Vue.component('my-component19',{
 name: 'my-component19', //其实当你利用 Vue.component 全局注册了一个组件,全局的ID会被自动设置为组件的name。
 props: {
  count: {
   type: Number,
   default: 1
  }
 },
 template: '<p><my-component19 :count="count+1" v-if="count<3"></my-component19></p>'
});
var app19 = new Vue({
 el: '#app19'
});

Das Rendering-Ergebnis ist:

 <p id="app19">
  <p>
   <p>
    <p><!----></p>
   </p>
  </p>
 </p>

Nach dem Festlegen des Namens kann er rekursiv in der Komponentenvorlage verwendet werden. Dies sollte jedoch der Fall sein Beachten Sie, dass eine Bedingung die Anzahl der Rekursionen begrenzt, andernfalls wird ein Fehler ausgegeben: maximale Stapelgröße überschritten. Die rekursive Verwendung von

-Komponenten kann verwendet werden, um einige unabhängige Komponenten mit unbekannten hierarchischen Beziehungen zu entwickeln, wie z. B. kaskadierende Selektoren und baumförmige -Steuerelemente usw.

2. Inline-Vorlage

Die Vorlage der Komponente wird im Allgemeinen in der Vorlagenoption definiert Wenn Sie eine Komponente verwenden, verwenden Sie das Inline-Template-Attribut für das Komponenten-Tag. Die Komponente behandelt ihren Inhalt dann als Vorlage, anstatt ihn als Inhalt zu verteilen, was die Vorlage flexibler macht.

Beispiele sind wie folgt:

<p id="app20">
   <my-component20 inline-template>
    <p>
     <h3>在父组件中定义子组件的模板</h3>
     <p>{{msg}}</p>
    </p>
   </my-component20>
  </p>
Vue.component('my-component20',{
 data: function(){
  return {
   msg: '在子组件声明的数据'
  }
 }
});
var app20 = new Vue({
 el: '#app20'
});

3. Dynamische Komponenten

Vue.js bietet ein spezielles Element <component> Wird zum dynamischen Mounten verschiedener Komponenten verwendet. Verwenden Sie das Attribut is, um die zu mountende Komponente auszuwählen.

Beispiele sind wie folgt:

<p id="app21">
   <component :is="currentView"></component>
   <button @click="changeView(&#39;A&#39;)">切换到A</button>
   <button @click="changeView(&#39;B&#39;)">切换到B</button>
   <button @click="changeView(&#39;C&#39;)">切换到C</button>
  </p>
var app21 = new Vue({
 el: '#app21',
 data: {
  currentView: 'comA'
 },
 methods: {
  changeView: function(data){
   this.currentView = 'com'+ data  //动态地改变currentView的值就可以动态挂载组件了。
  }
 },
 components: {
  comA: {
   template: '<p>组件A</p>'
  },
  comB: {
   template: '<p>组件B</p>'
  },
  comC: {
   template: '<p>组件C</p>'
  }
 }
});

4. Asynchrone Komponenten

Wenn Ihr Projekt groß genug ist und Sie genug verwenden Komponenten ist es an der Zeit, über Leistungsprobleme nachzudenken, da das Laden aller Komponenten zu Beginn unnötigen Mehraufwand verursacht.

Glücklicherweise ermöglicht Ihnen Vue.js, eine Komponente als Factory-Funktion zu definieren und die Komponente dynamisch zu analysieren. Vue löst die Factory-Funktion nur aus, wenn die Komponente gerendert werden muss, und speichert die Ergebnisse für das anschließende erneute Rendern zwischen. Die Factory-Funktion von

 <p id="app22">
      <my-component22></my-component22>
    </p>
Vue.component('my-component22',function(resolve, reject){
  window.setTimeout(function(){
    resolve({
      template: '<p>我是异步渲染的</p>'
    })
  },2000)
});
var app22 = new Vue({
  el: '#app22'
});

erhält einen Auflösungsrückruf und wird aufgerufen, wenn die vom Server heruntergeladene Komponentendefinition empfangen wird. Sie können auch „reject(reason)“ aufrufen, um einen Ladefehler anzuzeigen.
Das setTimeout dient hier nur dazu, die Asynchronität zu demonstrieren. Die spezifische Download-Logik kann beispielsweise von Ihnen selbst festgelegt werden. Schreiben Sie die Komponentenkonfiguration als Objekt--Konfiguration, fordern Sie sie über Ajax an und rufen Sie dann „resolve to“ auf Übergeben Sie die Konfigurationsoptionen.

Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!

Empfohlene Lektüre:

So deduplizieren Sie Daten beim Zusammenführen mehrerer Arrays

Was zur Bestimmung des Typs und der Größe benötigt wird der hochgeladenen Bilder Schritte

Das obige ist der detaillierte Inhalt vonPraktische Anleitung zur Verwendung von Vue-Komponenten. 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