在模块中设计一个列表, 触发Add Action时, 向列表中添加一个项目
这个项目用一个模板对象变量存储, 每次添加时, 将这个对象推入列表数组
let personBase = { name: "", mobile: "" };
let personList = [];
使用初始化模板新增项目
personList.push(personBase);
只push一次的时候, 不会发现问题, 如果多次Add, 那么改变数组中任一对象都会同时改变数组中所有对象
personList[0].name = "Dino";
console.log(personList[1].name;
// 输出Dino
因为这里push的是对象的引用, 而现在只是需要这个模板对象的结构与初始化数据
- 使用 ... 展开运算符
let personList.push({ ...personBase });
- 使用深拷贝
let personList.push(JSON.parse(JSON.stringify(personBase)));
1 评论