我有一个正在我的 React 应用程序的上下文组件中创建的对象。
它看起来像这样:
constructor(props) {
super(props);
this.state = {
roles: [
{ role_type : { display : Manager }},
{ role_type : { display : Accounting}},
{ role_type : { display : Developer }},
],
},
}
然后我进行一个 API 调用,它返回一个 role_type 对象数组。返回看起来像这样:
[
{
"uuid": "a49-a2a5-fcce",
"link": "organizations/roletypes/a49-a2a5-fcce/",
"code": "MANG",
"display": "MANAGER",
"description": "MANAGER"
},
{
"uuid": "681fbe",
"link": "organizations/roletypes/681fbe/",
"code": "SUPSPEC",
"display": "Support Specialist",
"description": "Support Specialist"
},
{
"uuid": "0331ddccf",
"link": "organizations/roletypes/0331ddccf/",
"code": "PROJMANG",
"display": "Project Manager",
"description": "Project Manager"
},
]
如果我的 API 调用成功,我想更新每个显示与 API 响应显示匹配的角色类型对象。
我有一个可行的解决方案:
updateRoleTypes = () => {
for(roleType in this.state.roles) {
for(responseType of APIresponse) {
if(responseType.display === this.state.roles[roleType].role_type.display) {
this.setState( this.state.roles[roleType] : responseType)
}
}
}
}
我的队友今天问我是否可以在没有 for 循环的情况下做到这一点。我不太确定如何更改我的代码以摆脱 for 循环:/
胡子哥哥
Cats萌萌
相关分类