debugging 材料表覆盖工具栏组件

xqnpmsa8  于 2022-11-14  发布在  其他
关注(0)|答案(1)|浏览(101)

为了覆盖react Material Table的Toolbar组件中的按钮,我复制了正式的Material Table Toolbar组件,并将其原样粘贴到我的项目中。然后,我按照文档中的描述覆盖了Toolbar组件:

<MaterialTable 
          title={"Test"}
          columns={this.state.columns} 
          data={this.state.data}
          components={
            {Toolbar:props => (
            <div>
                <MTableToolbar {...props}/>
            </div>)}
          }
          icons={tableIcons}
          options=
          {{
              showEmptyDataSourceMessage: true, 
              maxBodyHeight: 500
          }} />

但是现在我总是得到下面的错误:“无法读取未定义的属性(阅读'root')"。我检查了代码,发现属性类似乎是未定义的。在我的项目中的另一个地方,我做了几乎完全相同的(即在材料表中,我覆盖了工具栏组件等),它没有给我带来上述错误。你们中的任何人知道错误可能来自哪里吗?提前感谢!

qvtsj1bj

qvtsj1bj1#

我找到了一个解决方案。调用组件时,只需如下传递:

Toolbar:  props => (<MTableToolbar {...props} />),

替换为:

Toolbar:  props => (<MTableToolbar {...props} classes={{ root: "dummy-class"}}/>),

另一个选择是在默认的props工具栏里面放一行这样的代码:

MTableToolbar.defaultProps = {
actions: [],
columns: [],
columnsButton: false,
**//The line below is the one I'm adding**
classes: "",
.
.
.
}

相关问题