我想插入一个动态指令并将其传递给从父模型中获取的小范围,即$scope.model[i]
,其中i
是您刚刚单击的列表项的索引。
我有点想做的是:
element.append($compile("<newdirective />")($scope.model[i]));
我可以通过属性传递整个模型和索引,但似乎远非理想。
答案 0 :(得分:1)
我相信通过手动创建新范围,我找到了一种方法:
var newScope = $scope.$new();
newScope.model = $scope.model[i];
element.append($compile("<newdirective />")(newScope));
我能解决这个问题的另一种方法是在父$ scope中创建一个小范围,让子视图使用自然继承。
$scope.childScope = $scope.model[i];
//inside newdirective
<div ng-repeat="items in childScope"></div>