【发布时间】:2015-01-22 22:46:24
【问题描述】:
抱歉标题不好,实在想不出合适的。
无论如何,我有一个对象数组,它们都列在 ng-repeat 中。然后,我想在另一个对象数组中找到该对象,该对象与上述对象具有相同的 id 并获取其另一个属性。
我希望这个示例代码能简化一些事情:
$scope.discussions = [
{
recipient: {
id: 'theid'
},
messages: []
}
];
$scope.friends = [
{
id: 'theid',
online: false
}
];
在我看来,我有:
<div ng-repeat="discussion in discussions">
<div>Online = {{//code here}}</div>
</div>
都试过了
ng-class="{online: {{friends.some(fr => fr.id == discussion.recipient._id).online}}; }"
和
ng-class="{online: friends.some(fr => fr.id == discussion.recipient._id).online }"
【问题讨论】:
-
那么您可以使用 Javascript
.some()来帮助您确定friends的第一个元素,其中 id 匹配。 -
我无法真正让它工作,我不太确定我可以使用角度表达式来使用什么;/
-
我建议调用您在角度控制器中定义的一些函数,以在您的朋友数组中找到匹配的元素。
-
问题是我要解析的这个布尔值会发生很大变化,我想立即更新视图的所有更改
标签: javascript arrays angularjs angularjs-scope expression