Vue.js: Wie wird eine eindeutige ID für jede Komponenteninstanz festgelegt?
Ich möchte eine Komponente erstellen, mit Vue.js enthält ein label und ein input. zum Beispiel :
<label for="inputId">Label text</label>
<input id="inputId" type="text" />
Wie kann ich eine eindeutige ID für jede Komponente eine Instanz?
Danke.
InformationsquelleAutor der Frage PierreB | 2016-01-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Jede Komponente hat eine eindeutige id, die kann auch Sie zugegriffen werden wie
this._uid
.Wenn Sie möchten mehr Kontrolle über die ids können Sie zum Beispiel, erzeugen Sie innerhalb einer übergeordneten Komponente.
InformationsquelleAutor der Antwort zxzak
Obwohl zxzak Antwort ist toll;
_uid
ist nicht eine veröffentlichte api-Eigenschaft. So speichern Sie ein Kopfschmerz in den Fall wird es in der Zukunft ändern, aktualisieren Sie den code mit nur einer änderung mit einer plugin-Lösung wie unten.InformationsquelleAutor der Antwort Nihat
In Vue2, verwenden Sie v-binden.
Sagen, ich habe ein Objekt für eine Umfrage
InformationsquelleAutor der Antwort 趙曉明
Zu Nihat ' s point (oben): Evan Sie hat, von denen abgeraten wird Verwendung _uid: "Der vm _uid ist für die interne Verwendung reserviert und es ist wichtig, ihn privat zu halten (und sich nicht darauf verlassen, dass es im Benutzer-code), so dass wir halten, die Flexibilität zu ändern, sein Verhalten für mögliche zukünftige Anwendungsfälle. ... Ich würde vorschlagen, Generierung von UIDs sich [mit einem Modul eine Globale Mixins, etc.]"
Mit den vorgeschlagenen mixin in diesem GitHub-Ausgabe zu erzeugen, die UID scheint ein besserer Ansatz:
InformationsquelleAutor der Antwort Peter Weil
Es kann auch erreicht werden, wenn Sie dieses Muster verwenden (Vue 2.0 v-Bindung) , also lassen Sie uns sagen, Sie haben eine Liste von Elementen zu Durchlaufen, und Sie wollen, um einige dom-element uninque id.
Html
Hoffe es hilft
InformationsquelleAutor der Antwort pitaside