Angularjs 带ng重复和转置的角度指令
我想用angularjs创建一个表模板。对我来说,拥有可定制的列(a列的innerHTML)很重要。但我对ng repeat的隔离范围有一些问题。是否有任何方法可以访问aColumns转包中的ng重复作用域Angularjs 带ng重复和转置的角度指令,angularjs,Angularjs,我想用angularjs创建一个表模板。对我来说,拥有可定制的列(a列的innerHTML)很重要。但我对ng repeat的隔离范围有一些问题。是否有任何方法可以访问aColumns转包中的ng重复作用域 <a-Table> <a-Column><div class="abc">{{item.name}}</div></a-Column> <a-Column>{{item.car}}</a-Colum
<a-Table>
<a-Column><div class="abc">{{item.name}}</div></a-Column>
<a-Column>{{item.car}}</a-Column>
</a-Table>
在这里:
删除模板:
//template: "<table><tr ng-repeat='item in testValues'><td ng-transclude ></td></tr></table>",
html:
<div class="abc">{{ testValues[aTableIndex].name }}</div>
{{testValues[aTableIndex].name}
{{testValues[aTableIndex].car}
已更新
删除了Christoph建议的inject$compile(不需要),我相信指令模板中只能有一个
ng transclude
。因此,你不能把它放在ng repeat
-这是我脑子里想不出来的,所以我不能绝对肯定。也许使用$compile
会有所帮助。@m.e.conroy您好,谢谢您的支持。可能有不止一个ng transclude。看这里,我认为问题在于隔离的范围。我很困惑。你的代码有问题吗?这一切似乎都很好。@b谢谢你的评论。它在你的车里真的很管用。不幸的是,它似乎不适用于angular的最新稳定版本(1.2.23)。在你的plunker(angular版本1.3.0-beta.5)中,一切都很好。它适用于版本1.3.0-beta.1到1.3.0-beta.10。对于1.3.0-beta.11到1.3.0-beta.19,它不起作用。
//template: "<table><tr ng-repeat='item in testValues'><td ng-transclude ></td></tr></table>",
scope.testValues = [{
name: "Max",
car: "vw"
}, {
name: "Mike",
car: "bmw"
}]
angular.forEach(scope.testValues,function(v,k){
var newscope = scope.$new();
newscope.aTableIndex = k;
transclude(newscope,function(clone){
element.append(clone);
})
})
<div class="abc">{{ testValues[aTableIndex].name }}</div>
<a-Column>{{ testValues[aTableIndex].car }}</a-Column>