我在像
这样的控制器范围内有一个数组$scope.data = [{
"name" : "test",
"type" : "test"
},{
"name" : "production",
"type" : "production"
}]
现在在视图中我正在对模型数据执行循环,而我有两个指令就是测试另一个是生产。我想根据类型在ng-repeat中显示那些指令。所以我写了
<div ng-repeat="item in data">
<test ng-if="item.type == 'test'"></test>
<production ng-if="item.type == 'production'"></production>
</div>
这个工作正常。但我的问题是,不是添加这些ng-if是否有更好的出路,以便我可以在dom中添加这些指令,具体取决于模型的类型值。我尝试过:
<{{item.type}}></{{item.type}}>
但显然它没有用。
答案 0 :(得分:0)
为什么不尝试使用可作为条件使用的范围数据的唯一指令:
<div ng-repeat="item in data">
<directive data-env="item.type" data-name="item.name"></directive>
</div>
在指令中,您可以使用$scope.env
执行有条件的操作并仅显示您需要的内容。