Ich habe ein Array (helper.makes) wie folgt:AngularJS ng-repeat abhängig von einer anderen ng-repeat
[0] => { make: 'BMW', models: ['3 series','5 series'] }
[1] => { make: 'Honda', models: ['Camry','Corolla'] }
In meinem wählen möchte ich den Benutzer auszuwählen machen und aktualisieren Sie dann das Modell auswählen entsprechend . Hier ist mein Code so weit:
<label>
<p>Make</p>
<select ng-model="make">
<option ng-repeat="(key, value) in helper.makes | orderBy: 'name'">{{ value.name }}</option>
</select>
</label>
<label>
<p>Model</p>
<select ng-model="model">
<option ng-repeat="(key, value) in helper.getModelByMake(make) | orderBy: value">{{ value }}</option>
</select>
</label>
Bevor ich einfach ein assoziatives Array verwendet, so konnte ich helper.makes tun [machen], aber das hielt sie in ein Objekt drehen und Winkel weigerte sich, es zu bestellen. Auf diese Weise habe ich die Funktion getModelByMake erstellt, die einfach die Liste der Marken durchläuft, die richtige findet und das Modell-Array zurückgibt.
Das Problem ist, das scheint nicht zu aktualisieren, wie die Person die Marke ändert. Ich glaube, dass es versucht, einmal zu laden, zu sehen, dass keine Marke ausgewählt wird und leere Ergebnisse zurückgibt.
Welche Methode wäre am besten für eine solche Instanz in AngularJS? Gibt es etwas Unglaubliches, was AngularJS hier tun kann, wovon ich nichts weiß?
Haben Sie "ng-repeat-start" und "ng-repeat-end" probiert? – varit05
Lass mich das nachsehen. – Samir
Ich sehe nicht, wie das sinnvoll wäre. Es scheint, dass es mir einfach erlauben würde, Code außerhalb der Tags zu wiederholen: http://stackoverflow.com/questions/28940257/significance-of-ng-repeat-start-vs-ng-repeat – Samir