在angularjs中,如何仅从JSON中获取具有以下条件的唯一对象

在angularjs中,如何仅从JSON中获取具有以下条件的唯一对象,angularjs,Angularjs,在以下条件下,如何仅从JSON获取唯一对象: processed==true selected.type=='Intercompany'| | paye.selected.type=='Intercompany-OT' 我不想编写单独的JavaScript函数。试图在HTML中实现这一点 迄今为止我的HTML: <div data-ng-repeat="payee in data.contacts | filter: {processed:true }"> <bl

在以下条件下,如何仅从JSON获取唯一对象:

  • processed==true
  • selected.type=='Intercompany'| | paye.selected.type=='Intercompany-OT'
我不想编写单独的JavaScript函数。试图在HTML中实现这一点

迄今为止我的HTML:

<div data-ng-repeat="payee in data.contacts  | filter: {processed:true }">
    <blink data-ng-if="payee.selected.type === 'Intercompany' || payee.selected.type === 'Intercompany - OT'"><span class="pinkVouchers">PAID Vouchers - {{payee.selected.title}} - {{payee.selected.type}}</span></blink>
</div> 

我在想,唯一可能的办法就是使用。但是我发现了我使用的版本和你的版本之间的区别:需要像对象一样调用过滤器属性。在NGO上尝试此选项,重复:

var module=angular.module(“myModule”,[]);
模块控制器(“myController”,功能($scope){
$scope.message=“测试”;
$scope.myArray=[{
“隐藏”:是的,
“已处理”:正确,
“选定”:{
“职务”:“测试评估员2”,
“用户ID”:“1082495”,
“姓名”:“测试评估员2”,
“省”:“安大略省”,
“客户ID”:“133300”,
“组ID”:“,
“regNo”:“是”,
“类型”:“内部公司”
}
}, {
“隐藏”:是的,
“已处理”:正确,
“选定”:{
“标题”:“测试阿特金斯”,
“用户ID”:“1155027”,
“名称”:“测试阿特金斯”,
“省”:“不列颠哥伦比亚省”,
“客户ID”:“1234”,
“组ID”:“,
“regNo”:“No”,
“类型”:“内部公司”
}
}, {
“隐藏”:是的,
“已处理”:正确,
“选定”:{
“职务”:“测试评估员2”,
“用户ID”:“1082495”,
“姓名”:“测试评估员2”,
“省”:“安大略省”,
“客户ID”:“133300”,
“组ID”:“,
“regNo”:“是”,
“类型”:“内部公司”
}
}, {
“隐藏”:假,
“已处理”:假,
“选定”:{
“职务”:“测试评估员”,
“用户ID”:“1082466”,
“姓名”:“测试评估员”,
“省”:“安大略省”,
“custId”:“1111”,
“组ID”:“,
“regNo”:“No”,
“类型”:“内部公司-OT”
}
} ];
/*$scope.myArray=$scope.myArray.filter(函数(obj){
返回obj.processed&(obj.selected.type=='Intercompany'| | obj.selected.type=='Intercompany-OT');
});*/
});
module.filter('unique',function(){
返回函数(收集){
var newCollection=[];
angular.forEach(集合、功能(项){
var isDuplicate=假;
对于(var i=0;i

{{payee.selected.userId}

我在想,唯一可行的方法就是使用。但是我发现了我使用的版本和你的版本之间的区别:需要像对象一样调用过滤器属性。在NGO上尝试此选项,重复:

var module=angular.module(“myModule”,[]);
模块控制器(“myController”,功能($scope){
$scope.message=“测试”;
$scope.myArray=[{
“隐藏”:是的,
“已处理”:正确,
“选定”:{
“职务”:“测试评估员2”,
“用户ID”:“1082495”,
“姓名”:“测试评估员2”,
“省”:“安大略省”,
“客户ID”:“133300”,
“组ID”:“,
“regNo”:“是”,
“类型”:“内部公司”
}
}, {
“隐藏”:是的,
“已处理”:正确,
“选定”:{
“标题”:“测试阿特金斯”,
“用户ID”:“1155027”,
“名称”:“测试阿特金斯”,
“省”:“不列颠哥伦比亚省”,
“客户ID”:“1234”,
“组ID”:“,
“regNo”:“No”,
“类型”:“内部公司”
}
}, {
“隐藏”:是的,
“已处理”:正确,
“选定”:{
“职务”:“测试评估员2”,
“用户ID”:“1082495”,
“姓名”:“测试评估员2”,
“省”:“安大略省”,
“客户ID”:“133300”,
“组ID”:“,
“regNo”:“是”,
“类型”:“内部公司”
}
}, {
“隐藏”:假,
“已处理”:假,
“选定”:{
“职务”:“测试评估员”,
“用户ID”:“1082466”,
“姓名”:“测试评估员”,
“省”:“安大略省”,
“custId”:“1111”,
“组ID”:“,
“regNo”:“No”,
“类型”:“内部公司-OT”
}
} ];
/*$scope.myArray=$scope.myArray.filter(函数(obj){
返回obj.processed&(obj.selected.type=='Intercompany'| | obj.selected.type=='Intercompany-OT');
});*/
});
module.filter('unique',function(){
返回函数(收集){
var newCollection=[];
angular.forEach(集合、功能(项){
var isDuplicate=假;
对于(var i=0;i

{{payee.selected.userId}

好久没有看到闪烁标签了。。。我不认为这里有什么固有的错误。你能举一个可复制的例子吗?我的代码不会显示唯一的记录。它将显示所有记录。根据您提供的代码段,此功能正常工作。所有条目类型都是“Intercompany”或“Intercompany-OT”。我得到了记录测试评估员2两次。很久没有看到闪烁标记了。。。我不认为这里有什么固有的错误。你能举一个可复制的例子吗?我的代码不会显示唯一的记录。它将显示所有记录。根据您提供的代码段,此功能正常工作。所有条目类型都是“Intercompany”或“Intercompany-OT”。我将获得记录测试评估器2两次。当我使用您的声明时:它不会显示任何记录,我认为它不会显示唯一的记录。当我使用您的语句时,出现以下错误。错误:[$parse:syntax]未定义的T“%7D)%20%26%26%20%7b已处理%3Atrue%7D&p4=。类型%3A'Intercompany“%7D%20%7C%7C%20%7b已选中。类型%3A'Intercompany%20-未定义的T“%7D)%20%26%26%20%7b已处理%3Atrue%7D您的解决方案正在使用角度1.2.23,但未使用角度1.2.23
[
  {    
    "hidden": true,
    "processed": true,
    "selected": {
      "title": "Test Assessor 2",
      "userId": "1082495",
      "name": "Test Assessor 2",
      "province": "Ontario",
      "custId": "133300",
      "groupId": "",
      "regNo": "Yes",
      "type": "Intercompany"
    }
  },
  {
    "hidden": true,
    "processed": true,
    "selected": {
      "title": "Test Atkins",
      "userId": "1155027",
      "name": "Test Atkins",
      "province": "British Columbia",
      "custId": "1234",
      "groupId": "",
      "regNo": "No",
      "type": "Intercompany"
    }
  },
  {
    "hidden": true,
    "processed": true,
    "selected": {
      "title": "Test Assessor 2",
      "userId": "1082495",
      "name": "Test Assessor 2",
      "province": "Ontario",
      "custId": "133300",
      "groupId": "",
      "regNo": "Yes",
      "type": "Intercompany"
    }
  },
  {
    "hidden": false,
    "processed": false,
    "selected": {
      "title": "Test Assessor",
      "userId": "1082466",
      "name": "Test Assessor",
      "province": "Ontario",
      "custId": "1111",
      "groupId": "",
      "regNo": "No",
      "type": "Intercompany - OT"
    }
  }
]