我有产品型号列表
$scope.products=[{id:1,name:'product1'},{id:2,name:'product2'},{id:3,name:'product3'}, /*...*/]
和所选产品(ID列表)
$scope.selectedProducts=[1,5,3,8,12]
我必须以与selectedProduct列表中相同的顺序显示所选产品
我该怎么做?
答案 0 :(得分:0)
您可以应用过滤器。工作小提琴:http://jsfiddle.net/6XdaH/
过滤器代码:
angular.module('myApp',[]).filter('filteredProducts', function(){
return function(items,selectedProducts){
var arrayToReturn = [];
selectedProducts=[1,5,3];
for (var i=0; i<items.length; i++){
for(var j=0;j<selectedProducts.length;j++){
if (items[i].id == selectedProducts[j]) {
arrayToReturn.push(items[i]);
}
}
}
return arrayToReturn;
};
});