将新属性添加到状态并设置状态,然后销毁状态对象,我无法添加该属性

时间:2020-10-27 07:22:26

标签: reactjs react-native rxjs

我添加了一个要声明的属性。

 const[person, setPersonObj] = useState({});
setPersonObj({...person, age: 24});

并在jsx中使用,我可以看到年龄。

<input type="text" value = {person.age} /> 

但是当我再次破坏人对象时,并没有显示出年龄属性。

const personObj = {...person};
personObj.age is undefined; 

所有这些都是在一个事件中完成的。

1 个答案:

答案 0 :(得分:0)

我注意到您正在使用useState这样的钩子吗?

const [personObj, setPersonObj] = useState(...);

因此,这里的问题是当您使用setPersonObj时,状态personObj将使用新属性age而不是变量person更新。因此,当您再次将personObj设置为person且不包含age时,它将不包含age属性。