【发布时间】:2019-07-10 06:46:16
【问题描述】:
我对@987654323@ 和@Material UI 很陌生,我尝试了不同的锻炼方式,但还没有运气。有人可以指导我如何用expandIcon的Add和Remove图标覆盖ExpandLess和ExpandMore图标。这是代码https://stackblitz.com/edit/react-d2xrnq。我还注意到@Material UI <ExpansionPanel> 组件默认使用defaultExpanded 属性来展开所有扩展面板。那么,有什么方法可以通过单击折叠所有展开的扩展面板?
非常感谢您抽出宝贵时间。
【问题讨论】:
-
不确定我是否完全理解您的问题。你想用另一个图标替换
ExpandMore,是吗?并且没有ExpandLess图标,它只是使用CSS 旋转的ExpandMore图标。请问您为什么要用与创造性/破坏性操作相关联的图标替换在展开/折叠上下文中有意义的图标?最后,是的,您可以通过其expanded属性控制每个面板的状态,因此您可以添加逻辑以通过单击来展开/折叠所有面板。 -
我想解释一下我问 WHY 背后的原因。如果我点击
Remove图标,我希望面板会被完全移除,而不是折叠。如果我点击Add图标,我希望创建一个新面板(可能在某个表单对话框之后)。因此,使用这些图标来展开/折叠面板会非常违反直觉(并且与 Material 的“哲学”完全相反)。 -
@Jaxx,感谢您抽出宝贵的时间,我完全同意您的意见,但我的应用程序 UX 团队以这种方式设计了模拟,因此在多次尝试相同且没有看到任何运气之后,我将其放在这里。是的,我需要与 UX 团队讨论同样的事情,看看情况如何。我希望你会注意到这里https://react-d2xrnq.stackblitz.io 甚至左侧列表项也有
Add和Remove图标。 @Jaxx - 如果你有时间,你能分享一个示例代码 sn-p 如何通过单击来折叠扩展面板? -
实际上,我很困惑,以为您指的是
Create和Delete图标(笔和垃圾桶)。加号和减号并不是那么糟糕,尽管它们也不是非常适合;)
标签: reactjs material-ui