2016-10-06 2 views
0

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

Это код 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>' 
    } 
}); 

ответ

0

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

<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>' 
    } 
}); 
+0

Большое вам спасибо за помощь, это работает для меня –

Смежные вопросы