【发布时间】:2017-12-23 07:53:08
【问题描述】:
我正在尝试使用包含类似内容的对象来更新状态:
Object {check1: false, check2: true, check3: false}
但是当我用 setState 添加它时
this.setState({check : tmpObj});
状态中所有值都变为“false”,而 tmpObj 本身保持不变。
here 是一个代码示例。我正在加载显示为复选框的标准列表,并且此函数是为 onChange 事件创建的。
我做错了什么?
【问题讨论】:
-
分享完整的组件代码会更好。
-
here 我正在加载显示为复选框的标准列表
-
setState 替换整个对象并触发渲染。传入 setState 的新对象没有 check1、check2 和 check3 属性。
-
如果我将 setSate 中的“checkState”更改为其他任何内容,它将添加 3 个项目“check1”、“check2”和“check3”,其值为“false”,因此它肯定具有此属性。
-
但你在某个时候写过
标签: javascript reactjs state setstate