我试图将ng-repeat
指令替换为我编写的自定义指令。这是定义对象链接功能:
//directive definition object...
//...
///link: function (scope.......)
function buildList(entries){
var i,
timeline = [],
tplCopy,
tplFunct;
for (i = 0; i < entries.length; i++) {
tplFunct = $compile(entries[i]);
timeline.push(tplFunct(scope.$new()));
}
DOMelement.append(timeline);
}
其中scope
是我的指令工作的那个,entries
是NodeElement的列表。
除了一件事情之外,它的工作正常:通过tplFunct
绑定到单个条目的范围是我专门创建的新条目的子级。
所以我的问题是:tplFunct (scope.$new())
绑定范围本身的给定范围内的子节点吗?
修改。
新范围是由ng-controller="foo"
内的entries
指令生成的吗?即使绑定的控制器内部没有$scope
服务?
下面列出了两种不同的声明风格:
使用以下方法将方法和属性直接绑定到控制器上: ng-controller =&#34; SettingsController1作为设置&#34;
将$ scope注入控制器:ng-controller =&#34; SettingsController2&#34;