我正在AngularJS中构建一个自定义指令,我需要重复几次。目前,我的页面如下所示:
<div my-item ng-repeat="item in items" />
我的指示看起来像这样:
module.directive('myItem', function() {
return {
restrict: 'A',
replace: true,
scope: { item: '&' },
template: '<div id="item{{$index}}"></div>',
link: function($scope, element, attributes) {
element.append('<div>' + $scope.item.name + '</div>');
}
};
});
但是,在链接函数中,$scope.item.name
产生未定义。我想知道是否有任何方法可以访问我的指令中的重复项目。
如果没有,那么我的替代方案是什么?可能会在指令中移动ng-repeat
吗?
P.S。我知道你应该(一般来说)不要这样做DOM操作,但是因为我可能有〜2000个项目会导致6000个绑定,我担心这会导致严重的性能问题。