ich eine wählen, die wie folgt aussieht:Angular wählen reagiert nicht auf die ng-Modell ändert
{{vm.selected}}
{{vm.items}}
<select ng-options="item.value as item.label for item in vm.items track by item.value" ng-model="vm.selected">
</select>
Meine Artikel Array wie folgt aussieht:
this.items = [
{
"label":"Foo Bar",
"value":"foobar"
},
{
"label":"Baz Quux",
"value":"quux"
}
];
und das Element vm.selected
ist " foobar "
beide Bindungen werden korrekt über der Auswahl angezeigt, aber das Element ist nicht ausgewählt. Wenn ich die Auswahl in Entwickler-Tools überprüfen habe ich dies als die erste ausgewählte Element:
<option value="?" selected="selected"></option>
Auch wenn ich klicken Sie einfach ng-click="vm.selected = 'quux'"
nichts auf dieses Element verwende geändert wird. Die {{vm.selected}}
wird immer aktualisiert. Jeder hat eine Ahnung, was ist los?
Dies sollte korrekt funktionieren. Können Sie sich in einem Spiel reproduzieren? – devqon
Anstatt ng-click = "vm.selected = 'quux'", versuchen Sie es nicht: ng-init = "vm.selected = items [2] '" – MSH
Direkt an das Objekt in der Sammlung binden: [ Dokumentation] (https://docs.angularjs.org/api/ng/directive/ngOptions#complex-model-objects-oder-collections-) –