如何修复每个 <List> 项中的 ButtonGroup 组件 [关闭]

Posted

技术标签:

【中文标题】如何修复每个 <List> 项中的 ButtonGroup 组件 [关闭]【英文标题】:How to fix ‘ a ButtonGroup component inside every <List> items [closed] 【发布时间】:2019-12-11 05:13:52 【问题描述】:

我正在设置一个带有扩展选项的组件,我想在每个列表项中添加一个带有列出选项的 ButtonGroup。

const StackList = (props, permissions) => (
    <Card >
        <List ...props   pagination=false title=<AppTitle />>
            <Datagrid rowClick="expand" expand=<StackShow ...props  /> >
                <TextField source='name' />
                <TextField source='status' />
                <ReferenceField source='environment' label='Environment' reference='environments' allowEmpty>
                    <ChipField source='name' />
                </ReferenceField>
                <ReferenceArrayField source="hosts" label="Hosts" reference="hosts">
                    <SingleFieldList>
                        <ChipField source="name" />
                    </SingleFieldList>
                </ReferenceArrayField>
                permissions !== 'account-admin' &&<EditButton />
                permissions === 'account-admin' &&<DeleteButton />
                <SplitButton ...props  />
            </Datagrid>
        </List>
    </Card >
);

const enhance = compose(
    withStyles(classes),
);

export default enhance(StackList);

【问题讨论】:

您当前对&lt;SplitButton&gt; 组件的实现是什么? @Kmaschta 它与 Material UI 在他们的演示中提供的实现相同:material-ui.com/components/buttons/#split-button 注意:React Admin v2.x 使用 Material UI v1.x,所以你的文档必须是 v1.material-ui.com 我们正在升级到 Material UI v4 和 React Admin v3 正在大力开发 【参考方案1】:

在您的SplitButton 组件onClick 处理程序中,您应该调用event.stopPropagation(),它不会冒泡到展开处理程序

【讨论】:

以上是关于如何修复每个 <List> 项中的 ButtonGroup 组件 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

RecyclerView 项中的背景选择器

仅包含每个重复项中的第一个的 Linq 键

如何修复在 OnCreateView() 中变为 null 的 List<>

JAVA如何获取嵌套在静态LIST类中的静态LIST类

如何修复此错误类型“_InternalLinkedHashMap<String, dynamic>”不是“FutureOr<List<dynamic>>”类型的子类

如何单击列表视图项中的各个控件而不影响其他列表视图项中的控件?