Was ist der Unterschied zwischen `el` und `Vorlage` im vue-Komponente und app?

Einem VUE-Komponente (und die app selbst) haben eine el: und auch ein template.

Ich will verstehen, was der Unterschied ist, Wann muss ich Sie verwenden und Wann die andere:

Wenn ich ein Projekt erstellen mit Nonne CLI-von der minimal-VUE-OnsenUI Vorlage sehe ich:

new Vue({
  el: '#app',
  template: '<app></app>',
  components: { App }
});

Aus der sehr ausführlichen Dokumentation keine Beispiele, um eine lange Geschichte kurz, ich nehme an, dass die template dom-element und alles, was es ersetzt die el dom-element. (Die Schablone kann nur einen einzigen root-rechten?). Zum Beispiel : Wenn meine html-ist:

<html>...
  <body>...
    <replaceThis></replaceThis>... 

und mein vue js sagt:

el: "replace-this", 
template: "<div id='replaced'>hi there</div>" 

Dann bekomme ich :

<html>...<body>...<div id='replaced'>hi there</div>... 

aber ich kann auch schreiben:

el: "#bla", 
template: "#blu" 

Dann, wenn mein html ist

<html>
  <body>
    <div id="bla">
       anything inside here including the surrounding div will be replaced 
    </div>
    <template id="blu">
       <span id ="replacing-html">
           when ran in span, it stays mainly in the pan
       </span> 
    </template>
  </body>
</html>

dann den div mit der id bla ersetzt werden, mit der replacing-html span elelment, die innerhalb der template. (das template-tag selbst mit allem, was in wird es immer noch der emittierten html. richtig?)

So, ich brauche, um zu verstehen:

  1. Ist die template Inhalte austauschen der el element?
  2. Muss die template nur ein einziges root-element direkt unter ihm?
  3. Bin ich richtig mit meinem ersten Beispiel?
  4. Bin ich richtig über das zweite Beispiel?
  5. Wird die template tag mit allem, was in es bleibt in der emittierten html?
  6. Was passiert in dem Fall der Nonne Vue-OnsenUI Beispiel oben, wo die el ist die gleiche wie die Vorlage: "app". Ist das nicht rekursiv? Was ersetzt wird, und mit was?
  • Bitte ändern Sie nicht Ihre Frage, nachdem Sie bereits angenommen, eine Antwort auf Ihre ursprüngliche Frage. Wenn Sie eine neue Frage erstellen eine neue post für Sie.
  • Ich habe nicht wirklich ändern, sondern aktualisiert für übersichtlichkeit. Und kommentiert das akzeptiert und richtige Antwort, durch die Ausarbeitung mit Beispielen.
InformationsquelleAutor pashute | 2017-10-06
Schreibe einen Kommentar