Angularjs 带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

我想用angularjs创建一个表模板。对我来说,拥有可定制的列(a列的innerHTML)很重要。但我对ng repeat的隔离范围有一些问题。是否有任何方法可以访问aColumns转包中的ng重复作用域

<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>