Mit der angularjs navite select-Direktive ist die Modellbindung nur eine Möglichkeit, während in ui-select dies immer eine Zwei-Wege-Bindung zu sein scheint.Angularjs: Wie man ui-select macht nur ein Weg Modell biding?
<ui-select ng-model="uiSelected.animal">
<ui-select-match>
<span ng-bind="$select.selected.name"></span>
</ui-select-match>
<ui-select-choices repeat="animal in (animals | filter: $select.search) track by $index">
<span ng-bind="animal.name"></span>
</ui-select-choices>
</ui-select>
Hier ist das Plunker mein Problem präsentiert:https://plnkr.co/edit/FkZsFcMrTveWjXR5HNyT?p=preview
Mein Problem:
Wie kann ich ui-select machen nur eine einfache Fahrt mit dem Modell abwartend, so dass wenn ich das gewählte scope model ändere, ist es nicht an die ui-select gebunden? Wenn ich neu formuliere: Wie mache ich ui-select wie angular native select?
Vielen Dank für die Anregung. Ich habe daran gedacht. Aber um ehrlich zu sein, ich habe das Gefühl, dass das ein bisschen dreckig ist. Da meine Modelle dynamisch in Zahlen erweitert werden können, wäre es großartig, wenn es eine bessere Möglichkeit gäbe, dies zu beheben. – ccostel
Sorry ccostel, aber da du eine benutzerdefinierte Direktive verwendest (ui-select), befürchte ich, dass es nicht möglich ist, die Modellbindung zu ändern. ui-select bindet den ausgewählten Wert direkt an sein ng-model-Attribut. uiAusgewählt.Animalreferenzen für ein Element im Array $ scope.animals. Wenn sich das Objekt innerhalb des Arrays ändert, beeinflusst dies direkt das Objekt uiSelected.animal, da es sich nur um eine Referenz und nicht um eine Kopie des Objekts handelt. – Nils