Pass NG-Repeat Expression к функции NG-Click
-
20-12-2019 - |
Вопрос
Шаблон HTML содержит список элементов, фильтрованных
<ul class="gift_info">
<li ng-repeat="code in codes | filter:{id_id:detail.id}">{{code.discount}}</li>
</ul>
.
Ниже этого списка есть кнопка с кодом, как
<button type="button" ng-click="add_something(repeat_expression_needed)">Add more</button>
.
Цель состоит в том, чтобы кормить элементы из NG-Repeat выше, чтобы функционировать ниже как параметр (коллекция, массив, что угодно). Это выполняется через простые шаблонные директивы или некоторые трюки контроллера должны быть вовлечены?
Решение
Код с использованием метода @jonathan указал
<ul class="gift_info">
<li ng-repeat="code in (filteredCodes = (codes | filter: {id_id:detail.id})">{{code.discount}}</li>
</ul>
.
а затем
<button type="button" ng-click="add_something(filteredCodes)">Add more</button>
. Другие советы
Вы можете использовать выражение внутри NG-Repeat, чтобы назначить переменную, которая будет удерживать коллекцию, а затем будет доступна внутри области.
См. Ответ: Как можноЯ получаю массив результатов углового цвета «| фильтр» выражения в переменной?
Не связан с StackOverflow