【发布时间】:2018-10-22 20:42:00
【问题描述】:
我正在尝试根据条件将项目添加到“角色数组”。
我的json:
[{
"unitId": "2",
name: "elizabeth",
roles: [{
"role": {
"roleId": "2",
roleName: "testing"
}
}, {
"role": {
"roleId": "5",
roleName: "dev"
}
}]
},
{
"unitId": "3",
name: "peter",
roles: [{
"role": {
"roleId": "1",
roleName: "testing"
}
}, {
"role": {
"roleId": "2",
roleName: "dev"
}
}]
}
]
let newRole = { "role":{"roleId" : "6", roleName: "BA"}}
预期结果:将 newRole 添加到角色数组后。
[{
"unitId": "2",
name: "elizabeth",
roles: [{
"role": {
"roleId": "2",
roleName: "testing"
}
}, {
"role": {
"roleId": "5",
roleName: "dev"
}
}, {
"role": {
"roleId": "6",
roleName: "BA"
}
}]
},
{
"unitId": "3",
name: "peter",
roles: [{
"role": {
"roleId": "1",
roleName: "testing"
}
}, {
"role": {
"roleId": "2",
roleName: "dev"
}
}]
}
]
这里对于unitId: 2,我正在尝试向“角色数组”添加一个新角色。试过lodash的filter和push,还是不行。
【问题讨论】:
-
数组中的两个项目都有“2”作为“unitId”。似乎您需要另一个条件,因为它们具有相同的值。
-
更新了问题。只有第一项具有 unitId:2。
标签: ecmascript-6 lodash