/ / Angular Powtórz element z parametrami w HTML - angularjs

angular repeat item z parametrami w html - angularjs

Próbuję stąd wyciągnąć zmienne.

<option ng-repeat="n in hp(20,25,30,40,50,75,100)">{{n}}</option>

lub z wnętrza $ scope

  $scope.featured = [
{"hp": "20,25,30,40,50,75,100"}
];

wolałbym używać zakresu do zdefiniowania z zasięgiem i wyświetlać go jako, że mam więcej niż jeden z nich

<select>
<option>{{content.hp}}</option>
</select>

problem jednak polega na tym, że kiedy napisałem zakres w taki sposób, w jaki go mam, dostaję błędy. Istnieje sposób, aby zdefiniować więcej niż jedną opcję hp dla listy rozwijanej

Odpowiedzi:

1 dla odpowiedzi № 1

W obecnej formie, hp jest ciągiem, ale naprawdę szukasz tablicy.

Rozważ następujące:

Model

$scope.featured = {
hp: [20, 25, 30, 40, 50, 75, 100]
};

widok

<option ng-repeat="n in featured.hp">{{n}}</option>

Jednak prawdopodobnie najlepiej jest używać ng-options

Atrybut ngOptions może być używany do dynamicznego generowania listy elementów dla elementu przy użyciu tablicy lub obiektu uzyskanego przez ocenę wyrażenia rozumienia ngOptions.


0 dla odpowiedzi nr 2

Możesz użyć ng-options dyrektywa dla rodzica <select> element. Z dokumentów kątowych:

Atrybut ngOptions może być używany do dynamicznego generowania listy elementów dla elementu za pomocą tablicy lub obiektu uzyskanego przez ocenę wyrażenia rozumienia ngOptions

więc jeśli zdefiniujesz strukturę danych w swoim zakresie, możesz użyć ng-options dyrektywy, aby dynamicznie generować listę opcji dla ciebie zamiast ng-repeat. Daje to również większą kontrolę nad wartością opcji w porównaniu z wartością ostatecznie związaną z twoją ng-model dla <select>.


0 dla odpowiedzi № 3

ng-options byłby pomocny dla twojej potrzeby. Poprostu dodaj ng-model dzięki czemu doda do tego wybraną wartość ng-model zmienna wewnątrz zakresu.

<select ng-options="h in content.hp" ng-model="value"></select>