Javascript ng在包含数据的数组上重复,内部数组的键值相似,是否将分组?
我有一个包含另一个数据数组的数据数组,其中的key(typeofservicesigned:array(2))在两个内部数组中都是通用的,我希望以这样一种方式应用ng repeat,即相似的key值将分组在一起,而将一个组分开 有关更好的解释,请参见下文:Javascript ng在包含数据的数组上重复,内部数组的键值相似,是否将分组?,javascript,angularjs,Javascript,Angularjs,我有一个包含另一个数据数组的数据数组,其中的key(typeofservicesigned:array(2))在两个内部数组中都是通用的,我希望以这样一种方式应用ng repeat,即相似的key值将分组在一起,而将一个组分开 有关更好的解释,请参见下文: Array = [ { Quotation:1200, TypeOfServiceAssigned:["Primary", "Partial Services"], VendorEmail:"A@gmail.com
Array = [
{
Quotation:1200,
TypeOfServiceAssigned:["Primary", "Partial Services"],
VendorEmail:"A@gmail.com"
},{
Quotation:1350,
TypeOfServiceAssigned:["Partial Services"],
VendorEmail:"Add@gmail.com"
}
];
我想在数组上应用ng repeat,这样它将根据ServicesSigned值的类型显示两个组,一个用于主服务,另一个用于部分服务。对于部分服务程序,它将向我显示两个列表。最有效的方法是手工制作函数,以返回您想要的结果。。 ,然后像往常一样将其绑定到嵌套的ng repeat:) 然而,通常我们应该在服务器端/服务上这样做,但无论如何
function doGroupBy() {
var result = {};
for (var i = 0; i < input.length; ++i) {
var current = input[i].TypeOfServiceAssigned;
for (var j = 0; j < current.length; ++j)
if (result[current[j]])
result[current[j]].push(input[i]); // result[current[j]] = [...result[current[j]], input[i]];
else
result[current[j]] = [input[i]];
}
return result;
}
var input = [{ Quotation: 1200, TypeOfServiceAssigned: ["Primary", "Partial Services"], VendorEmail: "A@gmail.com" },
{ Quotation: 1350, TypeOfServiceAssigned: ["Partial Services"], VendorEmail: "Add@gmail.com" }];
var testResult = doGroupBy(input);
for (var key in testResult) {
console.log('-----------');
console.log(key);
console.log(testResult[key]);
}
函数doGroupBy(){
var result={};
对于(变量i=0;i
我会在您的控制器或服务中准备阵列,无论您的情况如何。然后重复一遍。但是,你试过什么?请分享小提琴,因为你已经试过了。spread操作符正在angularjs中抛出错误,(在gulp控制台中)