Pergunta

O modelo html contém uma lista de itens filtrados

        <ul class="gift_info">
         <li ng-repeat="code in codes | filter:{id_id:detail.id}">{{code.discount}}</li>
        </ul>

Abaixo desta lista há um botão com código como

<button type="button" ng-click="add_something(repeat_expression_needed)">Add more</button>

O objetivo é alimentar os itens do ng-repeat acima para funcionar abaixo como um parâmetro (coleção, array, qualquer que seja).Isso é possível por meio de meras diretivas de modelo ou é necessário envolver alguns truques do controlador?

Foi útil?

Solução

O código usando o método que @Jonathan apontou

<ul class="gift_info">
    <li ng-repeat="code in (filteredCodes = (codes | filter: {id_id:detail.id})">{{code.discount}}</li>
</ul>

e então

<button type="button" ng-click="add_something(filteredCodes)">Add more</button>

Outras dicas

Você pode usar uma expressão dentro do ng-repeat para atribuir uma variável que conterá a coleção e estará disponível dentro do escopo.

Ver resposta:Como posso obter a matriz de resultados de uma expressão angular "| filter" em uma variável?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top