在写增删改查时,增加和编辑往往使用同一个子组件,在数据回传时就需要判断是否为编辑。
1.如果为编辑:就替换原本的数据
2.如果是新增,就把新增的数据加入到原本的对象数组
const obj1 = [
{'name':'eee','age':18,'sex':'male'},
{'name':'fff','age':45,'sex':'male'},
{'name':'ert','age':18,'sex':'female'}
];
//编辑
let obj2 = {'name':'fff','age':60,'sex':'male'};
//判断是否含有这个对象,如果有就替换,没有就push
if(obj1.findIndex((val)=> val.name === obj2.name) !== -1){
let index = obj1.findIndex((val)=> val.name === obj2.name);
obj1.splice(index, 1, obj2);
}else {
obj1.push(obj2)
}
console.log(obj1);