我有这个材料ui表元素:
<Table
selectable={true}
allRowsSelected={true} <----THIS SELECTS ALL ROWS, BUT WHEN ONE ROW IS DESELECTED, IT DESELECTS ALL
multiSelectable={true}>
<TableHeader
displaySelectAll={true}
enableSelectAll={true}>
<TableRow>
<TableHeaderColumn>A</TableHeaderColumn>
<TableHeaderColumn>B</TableHeaderColumn>
<TableHeaderColumn>C</TableHeaderColumn>
</TableRow>
</TableHeader>
<TableBody
displayRowCheckbox={true}
deselectOnClickaway={false}>
{props.columnNames.map( (row, index) => (
<TableRow key={index} selected={true}>
<TableRowColumn>{row.A}</TableRowColumn>
<TableRowColumn>{row.B}</TableRowColumn>
<TableRowColumn>{row.C}</TableRowColumn>
</TableRow>
))}
</TableBody>
</Table>
allRowsSelected={true}
最初选择了所有表格行。我将columnNames
通过props
传递到我的组件中并通过它们迭代以显示每列。但是,当我取消选择一行时,它会取消选择所有行。
如何取消选择B,只取消行B,A,C仍然被检查?像这样:
X A
B
X C
我是否需要设置所选行的状态然后执行某些操作?如果是这样,我将如何实现它? (我已经尝试过设置状态并使用onRowSelection
函数但是我失败了)或者这是一个简单的Table属性选项吗?