我有条目,他们的json对象看起来像这样
{
'id': 5,
'activityId': 1
}
然后我有活动,他们的json对象看起来像这样
{
'id': 1,
'name': 'Activity name',
'rate': 1200
}
现在我正在渲染这样的条目
<tr ng-repeat="entry in entries">
<td>
<activities></activities>
</td>
<td>
// here's supposed to be the rate
</td>
</tr>
活动是这样的指令
app.directive("activities", function() {
return {
restrict: 'E',
template: '<select ng-model="entry.activityId" ng-options="a.id as a.name for a in activities"></select>'
}
});
现在我需要做些什么,才能在ng-repeat中打印速率?由于它是指令内部内容的属性,但是我需要在指令外部打印它。
谢谢..
最佳答案
您可以使用:
{{(activities | filter:{id: entry.activityId})[0].rate}}
虽然我觉得这有点难看。更好的方法是将活动直接添加为实体的属性,也许在加载两个数据集之后也可以。另一种方法是自制过滤器,该过滤器还会检查错误(例如,未找到activityId等)。
http://plnkr.co/edit/4ljEdDFPBpOzueFuI6FT