问题描述
之后
const element = <MyComp />
const cloned = React.cloneElement(element,someProps)
元素和它的克隆都被渲染。 (原始元素被渲染成一个门户。)
现在我需要将引用附加到 cloned
而不是 element
。
我相信我可以通过设置自定义 DOM 道具来实现这一点,例如:
const cloned = React.cloneElement(element,{ ...someProps,'data-cloned': true })
并在 MyComp
上的回调引用中发现道具:
const element = <MyComp ref={el => if (el.dataset.cloned) { myRef.current = el }}
(更新:它似乎不起作用,因为使用这种机制我永远不知道哪个实例应该将 ref 重置为 null)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)