我需要从Array中获取具有特殊属性“type”的对象。我要分配给范围的这些对象。我怎么能这样做?
以下方法对我没有用。
$scope.vendors = {}
$scope.clients = {}
$scope.loadCounterparties = function() {
Counterpartie.query(function(response) {
$scope.vendors = response.type.Vendor;
$scope.clients = response.type.Client
});
};
响应对象看起来像这样
提前致谢!
答案 0 :(得分:1)
Angular并没有专门为此做些什么。您需要通过普通的java脚本过滤数组。但是,您可以尝试使用3rd party library by the name underscore.js.
它添加了许多有用的功能,如"其中":
_。where(list,properties) 查看列表中的每个值,返回包含属性中列出的所有键值对的所有值的数组。
_。where(listOfPlays,{作者:"莎士比亚"年份:1611}); => [{title:" Cymbeline",作者:"莎士比亚",年份:1611}, {标题:"暴风雨",作者:"莎士比亚",年份:1611}]
这是图书馆页面的链接 http://underscorejs.org/#where
答案 1 :(得分:1)
可以使用angular forEach但我会使用lodash
// assuming one array and two search arguments i.e. client and vendor
var data = response;
$scope.loadCounterparties = _.filter(data, {type: 'Vendor', type: 'Client'});