假设以下数据:
var roster = [
{
id: 1,
attended: true,
person: {printName: 'Larry'}},
{
id: 2,
attended: false,
person: {printName: 'Curly'}},
{
id: 3,
attended: true,
person: {printName: 'Moe'}}];
我正在尝试查找数组中对象为true的对象计数。我尝试过以下方法:
rosters.html:
{{ (roster | filter:{attended:true} ).length }}
名册-controller.js:
checkedInCount: function() {
return $filter('filter')($scope.roster, attended.true).length;
}
html过滤器按预期工作,在此实例中返回2。但是,函数版本遇到错误ReferenceError: Can't find variable: attended
。我认为我在功能中遗漏了一些微不足道的东西,但我不确定它是什么。
答案 0 :(得分:2)
使用对象作为表达式:
return $filter('filter')($scope.roster, { attended: true }).length;