【发布时间】:2019-09-03 01:57:59
【问题描述】:
我想独立于用户交互动态打开/关闭折叠元素(通过搜索结果显示特定面板)。
Collapse 反应组件具有 setActiveKey(并在用户单击时使用它),但它不会暴露给 Collapse Node 引用。
有没有办法以不会触发重新渲染的方式打开或关闭?
我尝试使用 state 和 props,但这总是重新渲染嵌套 Collapse 组件的完整树,在我的情况下需要 3 秒以上。
在这里发布完整的代码是多余的,因为嵌套了许多相互依赖的组件。但是基本结构在这里可见:https://codesandbox.io/s/nk64q4xy8p
我想通过不同的用户交互打开特定面板。在选择或单击按钮的 onChange 代码笔中。
【问题讨论】:
-
你为什么不尝试把函数放在 setTimeout 中?
-
请发布您的代码以更好地帮助您。编辑您的问题并包含最小、完整和可验证示例的所有必需信息。
-
我添加了一个 codepen 示例,说明我想对嵌套结构做些什么,但是要在此处(甚至在 codepen 上)发布太多代码以使真正的用例可见:12 个月,每个有 5-20 个事件,每个事件还可以折叠成一个由 3 个面板组成的内部手风琴。
-
@ThanveerShah 你指的是哪个函数?
-
所以你想一键打开所有面板?
标签: javascript reactjs antd