Javascript 使用父作用域的片段编译动态指令
我想插入一个动态指令,并通过一个从父级较大模型中获取的小范围传递它,即Javascript 使用父作用域的片段编译动态指令,javascript,angularjs,angularjs-directive,angularjs-scope,Javascript,Angularjs,Angularjs Directive,Angularjs Scope,我想插入一个动态指令,并通过一个从父级较大模型中获取的小范围传递它,即$scope.model[I],其中I是您刚才单击的列表项的索引 我想做的是: element.append($compile("<newdirective />")($scope.model[i])); element.append($compile(“”)($scope.model[i]); 我可以通过属性传递整个模型和索引,但似乎远远不够理想。我相信我已经找到了一种方法,通过手动创建一个新范围来实现这一点
$scope.model[I]
,其中I
是您刚才单击的列表项的索引
我想做的是:
element.append($compile("<newdirective />")($scope.model[i]));
element.append($compile(“”)($scope.model[i]);
我可以通过属性传递整个模型和索引,但似乎远远不够理想。我相信我已经找到了一种方法,通过手动创建一个新范围来实现这一点:
var newScope = $scope.$new();
newScope.model = $scope.model[i];
element.append($compile("<newdirective />")(newScope));
var newScope=$scope.$new();
newScope.model=$scope.model[i];
元素追加($compile(“”)(newScope));
我能解决这个问题的唯一其他方法是在父$scope中创建一个迷你作用域,让子视图使用自然继承
$scope.childScope = $scope.model[i];
//inside newdirective
<div ng-repeat="items in childScope"></div>
$scope.childScope=$scope.model[i];
//内部新指令
我很难理解这一点。该指令将超出范围的是什么?