Reactjs submitHandler 如果设置了状态

Reactjs submitHandler if the state is set

我是 reactjs 的新手 - 如果复选框被选中,我尝试设置状态 - 当我读取状态时,我可以看到状态被填充 console.log('state' ,state) - 给出 {'option1': true} - 但是当我做 this.state.length 时它是未定义的。

原因很简单:State 是一个对象 这就是 length 给出 undefined.

的原因

如果你想检查有多少 key-value 对存在然后使用 Object.keys,它将 return 所有键的 array 然后使用长度.

像这样:

console.log(Object.keys(this.state).length).

检查这个片段:

let obj = {'option1': true, 'option2': true, 'option3': true};

console.log(Object.keys(obj).length);