我的 React 页面中有以下 Datagrid
<DataGrid pageSize={10} disableColumnFilter disableColumnSelector rows={this.props.searchData.resultsList} columns={this.state.columnList} theme={CustomClasses} sortModel={[{field: 'dateSort',sort: 'desc',},]}/>
我定义了以下列
this.columns = [
{
field: 'device',
headerName: 'Device',
disableClickEventBubbling: true,
width: 120,
hide: false
},
{
field: 'fullName',
headerName: 'Full Name',
disableClickEventBubbling: true,
flex: .5,
hide: false
},
{
field: 'details',
headerName: 'Details',
renderCell: renderDetailsButton,
flex: .4,
hide: false
}
];
}
this.setState({"columnList": this.columns});
当网格第一次渲染时,“详细信息”字段中有一个使用 renderCell 创建的按钮。我有一些代码允许用户选择他们想要显示的列。当他们这样做时,它会更新状态变量“columnList”。它工作正常,但是当使用更新的列渲染网格时,renderCell 不会在任何列中运行,并且详细信息字段为空白而不是显示按钮。我需要使用 renderCell 以外的东西吗?