javascript - 如何根据 id 更新对象
问题描述
我有一个对象数组:
employee = [
{
name: 'ashish',
id: 1,
date: '2020-11-12',
gender: 'male',
designation: 'developer'
},
{
name: 'mishra',
id: 2,
date: '2020-10-08',
gender: 'female',
designation: 'tester'
}
]
在我的按钮单击功能中,我得到了 id 和它的数据。我想更新 id 与我的数组的任何对象 id 匹配的记录
我试过这个。
editEmployee(id,data) {
this.employee.find(item => item.id == id).name = this.employee;
}
}
但出现错误:Type '{ name: string; id: number; date: string; gender: string; designation: string; }[]' is not assignable to type 'string'
有什么解决办法吗?
解决方案
你可以简单地做:
editEmployee(id,data) {
return this.employee.map(item => item.id == id ? data : item )
}
更新
var employee = [
{
name: 'ashish',
id: 1,
date: '2020-11-12',
gender: 'male',
designation: 'developer'
},
{
name: 'mishra',
id: 2,
date: '2020-10-08',
gender: 'female',
designation: 'tester'
}
]
function editEmployee(id,data) {
return employee.map(item => item.id === id ? data : item )
}
employee = editEmployee(1,{name:"youba"})
console.log(employee)
推荐阅读
- python - 如何在烧瓶服务器发布请求中发送包含图像文件和其他变量值的响应数据?
- swift - IOS中获取和缓存用户
- datatables - 通过底层 DataTables 对象自定义 dc-tableview
- python - Tweepy 在收集到 1500 条推文后停止
- javascript - 在单词替换器 chrome 扩展中,如何突出显示新单词并在光标悬停在其上时显示替换的单词
- ldap - ClickHouse 为未来的用户将 default_roles_all 设置为 0
- java - 即使数据库中有数据,GET 请求也会返回 [],我的模型或控制器类可能出了什么问题?
- javascript - 从 11 升级到 12 后出现 Angular Material UI 错误
- c# - 如何在 ToolBarTrays 之间拖动 'n' Drop ToolBars
- jwt - Bearer error="invalid_token", error_description="之前的token无效