我在react中创建了一个列表,其结构如下:
- 虚拟形象
- 文字
- 编辑图标
- 删除图标
我创建的结构很好,直到删除图标。我如何添加这个?目前,它是重叠的编辑图标,因为两者都是ListItemSecondaryAction
,但我无法在文档中找到如何添加一个额外的对象,它应该被称为什么?https://material-ui.com/components/lists/
当前实施:
<List>
<ListItemAvatar>
<Avatar src="image" />
</ListItemAvatar>
<ListItemText primary="name" />
<ListItemSecondaryAction>
<IconButton>
<EditIcon />
</IconButton>
</ListItemSecondaryAction>
<ListItemSecondaryAction>
<IconButton>
<DeleteIcon />
</IconButton>
</ListItemSecondaryAction>
</List>
2条答案
按热度按时间qcuzuvrc1#
将两个操作放在一个
ListItemSecondaryAction
中几乎就足够了(如注解和另一个答案所示)。唯一的问题是,如果你有很长的内容,它会与第一个图标重叠。下面是ListItem中辅助操作的样式:
paddingRight: 48
对于两个图标是不够的。您可以按如下方式自定义它:下面是一个完整的v4工作示例(v5示例更下方),显示了没有此自定义的前两个列表项(因此发生重叠)和具有修复的后两个列表项:
下面是一个等效的v5示例。与v4版本相比,更改如下:
styled
而不是withStyles
和makeStyles
ListItemButton
,而不是不建议使用的ListItem
button
属性disablePadding
prop添加到ListItem
元素中。@material-ui/core
和@material-ui/icons
更新为@mui/material
和@mui/icons-material
xhv8bpkk2#
我完全删除了
ListItemSecondaryAction
并将其替换为ListItemIcon
,因此现在的代码如下所示: