反应物料表:一次编辑所有行

时间:2020-07-22 10:02:45

标签: reactjs material-ui

我一直在使用https://material-table.com/#/。它的效果很好,但是对于需要大量编辑的表,使用逐行编辑功能会很麻烦。

我想要的是一个表级操作,它将整个表变成“编辑模式”,以及一个常规的提交操作/取消操作。

此问题链接到Material-table editable: Making all rows editable at once,但未提供令人满意的答案。我希望好运。

我真的不知道从哪里开始,因此欢迎您提供帮助。

2 个答案:

答案 0 :(得分:1)

材料表具有可使用的批量更新功能。以下是their websites

中的示例代码
<MaterialTable
  editable={{
    onBulkUpdate: (changes) =>
      new Promise((resolve, reject) => {
        setTimeout(() => {
          // write your logic here
          /* setData([...data, newData]); */
          resolve();
        }, 1000);
      }),
  }}
/>;

答案 1 :(得分:0)

Material-Table中提供的EditRow功能基于rowData而不是基于Table数据,类似地,您可以覆盖EditRow,但它仅限于rowData而不是Table数据。据我所知,材料表尚不支持此功能。我建议您在他们的repo中提出问题/功能要求。

但是,我能想到的一种可能的解决方法是,如果编辑列(字段)仅是您需要在表中进行编辑的列,那么您可以覆盖EditRow并提供您自己的editRow函数,将tableData与rowData以及onChange一起传递,您可以为tableData中的所有行更新所需的属性。