我看到有filterIcon、menuIcon和menuIconButton属性,但我不知道如何应用它们。
filterIcon
menuIcon
menuIconButton
<DataGrid rows={rows} columns={columns} rowsPerPageOptions={rowsPerPage} disableSelectionOnClick // should be some stuff here />
8xiog9wr1#
我尝试过这种方法,首先定义样式
const styles = theme => ({ activeSortIcon: { opacity: 1, color : 'blue', }, inactiveSortIcon: { opacity: 0.4, color : 'green', }, });
然后在DataGrid组件中根据您的逻辑使用这些样式
<DataGrid rows={rows} columns={columns} rowsPerPageOptions={rowsPerPage} disableSelectionOnClick classes={{ icon: ((orderBy === column.id) ? classes.activeSortIcon : classes.inactiveSortIcon ) }} // should be some stuff here />
您可以添加不同的图标样式,而不是使用这种方法的颜色。希望这种方法可能会有帮助。请让我知道如果这工作。参考:How to change the style of sorting icon in Material UI table?
f2uvfpb92#
对于那些仍然对MUI数据网格图标样式感兴趣的人,您还可以使用样式化组件而不是使用类。
const StyledDataGrid = styled(DataGrid)((theme) => ({ "& .MuiDataGrid-sortIcon": { opacity: 1, color: "white", }, "& .MuiDataGrid-menuIconButton": { opacity: 1, color: "white" }, }));
既然我们已经相应地声明了样式,现在您可以返回样式化的组件:
<StyledDataGrid rows={x} columns={columnDef} autoHeight ...more stuff if you want... />
这就对了!你不需要声明类或任何东西。而且,样式化组件允许你用正确的引用(MuiDataGrid-columnHeaders、MuiDataGrid-columnHeaderTitle、Mui-selected等)来样式化数据网格中的所有内容。请随意查看有关MUI样式组件的说明:https://mui.com/system/styled/
2条答案
按热度按时间8xiog9wr1#
我尝试过这种方法,首先定义样式
然后在DataGrid组件中根据您的逻辑使用这些样式
您可以添加不同的图标样式,而不是使用这种方法的颜色。希望这种方法可能会有帮助。请让我知道如果这工作。
参考:How to change the style of sorting icon in Material UI table?
f2uvfpb92#
对于那些仍然对MUI数据网格图标样式感兴趣的人,您还可以使用样式化组件而不是使用类。
既然我们已经相应地声明了样式,现在您可以返回样式化的组件:
这就对了!你不需要声明类或任何东西。而且,样式化组件允许你用正确的引用(MuiDataGrid-columnHeaders、MuiDataGrid-columnHeaderTitle、Mui-selected等)来样式化数据网格中的所有内容。
请随意查看有关MUI样式组件的说明:https://mui.com/system/styled/