Material-Table 用单选按钮替换复选框

Material-Table replace checkboxes with radio buttons

我正在使用 material-table 来显示一些数据,现在我想 select 一次将一行的数据传递给另一个组件,因此能够 select 当时多行不是我要找的,主要建议是选择一个单选按钮。那么有没有办法用单选按钮替换 table 上的复选框,或者使 selection 选项一次只允许 select 编辑一行?

根据 documentation 你的手被绑住了。但是,这可能有效:

  1. selectedRow键添加到使用MaterialTable
  2. 的组件
  3. 创建一些方法或函数,例如handleSelection 并将其传递给 onSelectionChange 道具。这个 func 的参数是一个 handleSelection returns
  4. 的数组
  5. 当用户 select 某行时,将 selectedRow 设置为该行对象
  6. 如果用户单击“全选”复选框(左上角)- 显示不支持操作的通知。如果无法以编程方式取消select所有复选框 - 卸载然后安装 MaterialTable(重置复选框)
  7. 如果一行已经 selected,则另一行得到 selected(这使得两个 selected 行)- 重复步骤“4”

我知道这有点复杂,但这是我目前能想到的最好的

n.b。您可以做的另一件事(强制用户 select 只有一行)是在多个 selection 上隐藏 table 并显示有关他们可以做什么的消息。消息可以关闭。当消息关闭时,可能会出现新鲜的 table(重新装载)。

更新

刚找到另一个可能适合您的选项。查看“简单操作示例”中的 this page。那里有按钮而不是复选框。我开始认为:

 options={{
   selection: true
 }}

不适合您。