Uma maneira de repetir o número definido de vezes, em vez de repetir sobre a matriz?
Existe uma maneira de repetir um número definido de vezes, em vez de ter de iterar sempre sobre uma matriz?
Por exemplo, abaixo quero que o item da lista apareça 5 vezes assumindo $scope.number
igual a 5, além de incrementar o número para que cada item da lista aumente como 1, 2, 3, 4, 5
Resultado desejado:
<ul>
<li><span>1</span></li>
<li><span>2</span></li>
<li><span>3</span></li>
<li><span>4</span></li>
<li><span>5</span></li>
</ul>
414
3
No momento,
ng-repeat
só aceita uma coleção como parâmetro, mas você poderia fazer isso:E algures no teu controlador:
Isto permitir-lhe-ia alterar o
$scope.number
para qualquer número que deseje e ainda manter a ligação que você're procura.[Aqui está um violino][1] com um par de listas utilizando a mesma função
getNumber
.**EDIT 1/6/2014***: Novas versões do Angular 1.x fazem uso da seguinte sintaxe:
**EDIT 9/25/2018***: As novas versões do Angular 1.x permitem-lhe fazer isto sem uma função. Se o seu código é simples e você não'não precisa de uma função
getNumber
por outras razões, você pode agora omitir isso e apenas fazer isso:Crédito a @Nikhil Nambiar da sua resposta abaixo para esta actualização
Aqui está um exemplo de como você poderia fazer isso. Note que fui inspirado por um comentário nos documentos ng-repeat: http://jsfiddle.net/digitalzebra/wnWY6/
Repare na directiva de repetição de ng-repeat:
Aqui está o controlador:
Acho que isto [jsFiddle][1] a partir deste thread pode ser o que você're procura.