AngularJS директива динамический шаблон ng-repate не работает

У меня есть проблема, когда я хочу показать индекс циклов+1 в шаблоне html.

Это код JS:

var app = angular.module('app', []);
app.controller('emp', function($scope) {
    $scope.myNumber = 5;
    $scope.myOtherNumber = 10;
    $scope.getNumber = function(num) {
        return new Array(num);
    }
});
app.directive('test', function() {
    return {
        restrict: 'A',
        require: 'ngRepeat',
        scope: {
            nbr: '@'
        },
       template: '<li ng-repeat="i in getNumber(myOtherNumber) track by $index"><span>{{$index+1}}</span></li>'
    }
});

1 ответ

  1. Вы должны передать параметры для директивы вместо вызова метода контроллера, как так:

    <list-numbers numbers="[1,2,3,4,5]"></list-numbers>
    

    Или может быть это:

    <list-numbers numbers="getNumber(myOtherNumber)"></list-numbers>
    
    
    app.directive('listNumber', function() {
        return {
            restrict: 'E',
            scope: {
                numbers: '='
            },
           template: '<ul><li ng-repeat="i in numbers track by $index"><span>{{$index+1}}</span></li></ul>'
        }
    });