Reactjs 禁用另一个';选择

Reactjs 禁用另一个';选择,reactjs,material-table,Reactjs,Material Table,我正在使用react material table,我想知道是否有一种方法可以在选择表行时禁用同一表的其他行。我正在使用: material-table selection: true 我看到有一个“选举上的改变”,但我不能让它对我的案子起作用 在jsx元素中使用禁用,如下所示: `<td disabled={true} />` `` 或者你也可以在大括号中创建你自己的逻辑,当它应该被禁用时 谢谢 是的,有可能: 首先将选定行保存在状态中,如果选择某行以删除悬停动画,则返回u

我正在使用react material table,我想知道是否有一种方法可以在选择表行时禁用同一表的其他行。我正在使用:

material-table selection: true 

我看到有一个“选举上的改变”,但我不能让它对我的案子起作用

在jsx元素中使用
禁用
,如下所示:

`<td disabled={true} />`
``
或者你也可以在大括号中创建你自己的逻辑,当它应该被禁用时

谢谢

是的,有可能: 首先将选定行保存在状态中,如果选择某行以删除悬停动画,则返回undefined:
onRowClick={!this.state.selectedRow?((evt,selectedRow)=>this.setState({selectedRow})):未定义}

此外,您还可以替代选项中的行样式以灰显文本颜色,使行看起来被禁用:

options={{
         rowStyle: rowData => ({
            color: (this.state.selectedRow && this.state.selectedRow.tableData.id !== rowData.tableData.id) ? '#AAA' : '#000'
       })
}}
在单击之前,它将如下所示: 点击后如下所示: 当然,你可以根据自己的喜好改变颜色和行为


如果选择了父项,以下是防止子项丢失的方法。这有用吗?

对不起,这对我一点帮助都没有。MaterialTable不使用您提到的元素。正如您所说,该属性已“禁用”,我只是不知道如何集成它。这是一个很好的示例,但它似乎不起作用,因为首先呈现选项,并且它在selectedRow中看起来是表单数据,而selectedRow中还不存在。从您的示例中,如果选择了Tipi=成人,我如何禁用Tipi=儿童的所有行(意味着无法选中选择(复选框))?是!非常感谢。