我使用Semantic-React并且我有由复选框组组成的组件过滤器。每个复选框都有id,我必须传递它们才能过滤结果。第一个想法是执行在复选框onCLick
之后调用的方法(它会传递复选框ID)。并且在此方法中设置状态对象,并在每个复选框后单击更改它。我记得,在Jquery
存在$('form').serialize()
,每次检查表单元素并自动获取检查值。反应中存在这样的东西,还是语义反应?使用这种方法比使用状态
答案 0 :(得分:0)
您应该使用“受控组件”:
state
。checked
属性应设置为true
,前提是该集合包含过滤器组件false
中的框ID(否则为render
。)onChange
应由过滤器组件处理并修改状态。 state
处理复选框onChange
或按钮“应用”onClick
(或过滤器组件处理的任何其他事件)。 setState
是异步函数,直接读取其他组件state
会导致数据竞争,因此必须在React触发正确事件后读取state
。还有一群像Redux这样的州政府员。此处的官方文档中对此进行了描述:https://reactjs.org/docs/forms.html