Esta es la respuesta más completa que encomtrarás aportar, pero mírala detenidamente y analiza si se adapta a tu trabajo.
Solución:
Actualización (25/9/2018)
Las versiones más nuevas de AngularJS (> = 1.3.0) le permiten hacer esto con solo una variable (no se necesita función):
$index+1
$scope.number = 5;
Esto no era posible en el momento en que se hizo la pregunta por primera vez. Crédito a @Nikhil Nambiar por su respuesta a continuación para esta actualización
Original (29/5/2013)
En este momento, ng-repeat
solo acepta una colección como parámetro, pero puede hacer esto:
$index+1
Y en algún lugar de tu controlador:
$scope.number = 5;
$scope.getNumber = function(num)
return new Array(num);
Esto te permitiría cambiar $scope.number
a cualquier número que desee y aún así mantenga la encuadernación que está buscando.
EDITAR (6/1/2014) – Las versiones más nuevas de AngularJS (> = 1.1.5) requieren track by $index
:
$index+1
Aquí hay un violín con un par de listas que usan el mismo getNumber
función.
Puedes hacerlo:
...
A continuación, se muestra un ejemplo de cómo podría hacer esto. Tenga en cuenta que me inspiré en un comentario en los documentos de ng-repeat: http://jsfiddle.net/digitalzebra/wnWY6/
Tenga en cuenta la directiva ng-repeat:
$index + 1
Aquí está el controlador:
function TestCtrl($scope)
$scope.range = function(n)
return new Array(n);
;
;