我已经坚持了几个小时 - 任何人都可以帮忙吗?
我有一个嵌套指令列表,我正在通过 ng-repeat 对其进行迭代。这些指令的模板相当大,所以我将它们模块化为单独的 HTML 文件并通过 templateUrl 加载它们,但这似乎破坏了数据绑定。
我在这里复制了这个问题:http: //plnkr.co/edit/72HUb0vhtpYWuRHnlq3b ?p=preview
HTML:
<div project-ext ng-repeat="project in projects"></div>
项目.html
{{project.name}} <button ng-click="projects.splice($index,1)">-</button><br>
<div schedule-ext ng-repeat="schedule in project.schedules"></div>
时间表.html
{{schedule.name}}<button ng-click="remove($index)">-</button>
JS:
app.directive('projectExt', function() {
return {
templateUrl: 'project.html'
};
});
app.directive('scheduleExt', function() {
return {
templateUrl: 'schedule.html',
link: function(scope) {
scope.remove = function(i) {
scope.$parent.project.schedules.splice(i,1)
};
}
};
});
谁能告诉我为什么删除按钮在第二个清单中不起作用,而我所做的只是将指令构造从模板更改为 templateUrl?