2014-09-16 6 views
0

У меня есть массив, такие какAngularJS Фильтр массива в соответствии с индексом

$scope.myList = 
[ 
["one","two","three"], 
["a","b","c"], 
["one","two","three"] 
] 

А теперь я хочу использовать нг-повтор перечислить третий индекс с фильтром.

<select > 
    <option ng-repeat="item in myList| filter:item[2]:'text_here'"> 
     {{item[2]}} 
    </option> 
</select><br/> 

Что бы я сделал, чтобы отфильтровать 3-й элемент каждого массива и применить соответствующий фильтр? Я почти уверен, что мой ответ выше неправильный.

+0

как насчет 'item in myList [scopeVar]' .. изменить индекс в контроллере, используя '$ scope.scopeVar = 2' – charlietfl

+0

Прочитайте документы по выбору. У вас могут возникнуть проблемы с созданием этого способа. https://docs.angularjs.org/api/ng/directive/select – flybear

+0

Я смущен тем, что вы пытаетесь заставить свой вывод выглядеть. Вы хотите видеть, что вы видите «три, c, три»? – flybear

ответ

0

Хорошо, если вы хотите, чтобы ваш выход был three,c,three, тогда вам не нужен фильтр. Вам просто нужно изменить нг-повтор на нг-опции, с помощью http://docs.angularjs.org/api/ng/directive/select

<select ng-options="item[2] as item[2] for item in myList"></select> 

Если вы только пытаетесь перечислить индексы третьего массива в $scope.myList тогда вы могли бы сделать это

<select ng-options="item as item for item in myList[2]"></select>