【发布时间】:2019-07-20 12:09:58
【问题描述】:
我有以下格式的 json
[{
"id": 1,
"role": {
"id": "25",
},
"target": {
"id": "1083",
},
"staff": {
"name: "
ccc "
}
},
{
"id": 2,
"role": {
"id": "25",
},
"target": {
"id": "1083",
},
"staff": {
"name: "
aaa "
}
},
{
"id": 3,
"role": {
"id": "25",
},
"target": {
"id": "1084",
},
"staff": {
"name: "
staff1 "
}
},
{
"id": 4,
"role": {
"id": "3",
},
"target": {
"id": "1083",
},
"staff": {
"name: "
aaa "
}
}
]
我正在尝试按角色 ID 对所有特定目标 ID 进行分组。一切正常,除了我还想按员工姓名对内容进行排序。
const groupIt = targetId =>
chain(data[2])
.filter(x => x.target.id === targetId)
.groupBy("role.id")
.value()
console.log(groupIt('1083'))
预期结果
{
"25": [{
"id": 2 "role": {
"id": "25",
},
"target": {
"id": "1083",
},
"staff": {
"name": "aaa"
}
},
{
"id": 2 "role": {
"id": "25",
},
"target": {
"id": "1083",
},
"staff": {
"name": "ccc"
}
}
],
"3": [{
"id": 4,
"role": {
"id": "3",
},
"target": {
"id": "1083",
},
"staff": {
"name": "staff1"
}
}]
}
我尝试同时保持 orderBy ,但没有奏效。我正在考虑遍历每个角色并对它们进行排序。但我正在考虑是否有其他解决方案。
【问题讨论】:
标签: angular ecmascript-6 lodash