【发布时间】:2020-11-13 08:48:05
【问题描述】:
我有一个对象数组:
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'
有什么解决办法吗?
【问题讨论】:
-
为什么要将对象的
name属性设置为this.employee数组? -
@adiga 刚刚我正在调试,我想更新属于该 ID 的整个对象。
-
data是否拥有该id的完整员工对象? -
你可以试试
const i = this.employee.findIndex(e => e.id === id); this.employee[i] = data或Object.assign(this.employee.find(e => e.id === id), data) -
@adiga 它不起作用,它正在创建另一个索引为 -1 的对象
标签: javascript angular typescript