Heim > Artikel > Web-Frontend > Wie lege ich das Wertattribut in ng-options für AngularJS fest?
Mit der ng-options-Direktive von AngularJS können Entwickler Optionen für ein
Um den Werteinstellungsmechanismus zu verstehen, schauen wir uns die Syntax von ngOptions an. Es nimmt einen Ausdruck in einer dieser Formen an:
Für Arrays:
label for value in array
Für Objekte:
label for (key, value) in object
Betrachten Sie das folgende Beispielarray:
array = [{ "value": 1, "text": "1st" }, { "value": 2, "text": "2nd" }];
Um die Optionen mit ng-options zu füllen, können wir schreiben:
<select ng-options="obj.text as obj.value for obj in array"></select>
In diesem Fall bestimmt obj.value die Auswahl Wert für jede Option.
Update: Track by Value Expression
Mit den letzten AngularJS-Updates ist es jetzt möglich, den Wert für das Wertattribut mithilfe eines Track by explizit anzugeben Ausdruck:
<select ng-options="obj.text for obj in array track by obj.value"></select>
Syntax merken
Es kann schwierig sein, sich die ngOptions-Syntax zu merken. Eine hilfreiche Analogie besteht darin, es sich als eine erweiterte Version des Listenverständnisses von Python vorzustellen:
[x**2 for x in [1, 2, 3, 4, 5]]
In ng-options unterscheiden wir jedoch zwischen dem Wert und dem Text, der für jede Option angezeigt wird, indem wir das Schlüsselwort as verwenden:
person.id as person.name for person in people
Für JavaScript-Objekte ist die Syntax ähnlich und verwendet (Schlüssel-Wert-)Paare:
for (key, value) in object
Das obige ist der detaillierte Inhalt vonWie lege ich das Wertattribut in ng-options für AngularJS fest?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!