0

我在 React 上遇到了一个奇怪的问题,即使用固定数据表生成的表,其行取决于计算的状态变量。

这些行中的每一行都有一个复选框,以便能够批量选择数据。当按下按钮时,所有选中的行都会隐藏,这就是问题出现的时间:如果选中了顶行而下面的行没有被选中,当重新呈现表格时,顶行复选框保持选中状态(在原始顶行具有被隐藏)。

显示数据的普通列是动态生成的,但带有复选框的列是这样生成的:

<Column
 width={75}
 header={<Cell>Check</Cell>}
 columnKey="selectCol"
 cell={({rowIndex, ...props}) => (
  <Cell>
   <input type="checkbox" onChange={(e) => {
     var chk = e.target;
     {/* stuff that doesn't affect whether it's checked or not when rendered */}
    }}
  </Cell>
 )}
/>

有谁知道会发生什么?非常感谢

4

1 回答 1

0

您需要设置每个复选框的值。我的意思是在每个复选框的初始状态下使其为假。然后在 onchange 发生时使目标事件成为 true。因此,无论何时动态生成复选框对象,每个单元格都有一个唯一 id,根据您的选择对应于某个值(initialState = true/false)。之后,根据您的选择继续更新状态。

于 2016-10-13T16:20:03.060 回答