由于构建输出不正确,React 19 的 nodeRef 解决方案不起作用

作者: rhyek创建于 2025年4月27日更新于 2025年4月27日

对于 React 19 中 findDOMNode 的删除,建议的解决方案是通过 nodeRef 提供 DOM 元素引用。但由于 react-draggable 的构建方式,此方法无法实现。在 这里 进行的对 nodeRef 的检查会在 nodeRef 为空引用({ current: null })时回退到使用 ReactDOM.findDOMNode,而 DOM 引用的初始值总是为空。源代码似乎正在做正确的事情,不会导致这种行为,但经过编译后代码会改变行为:

内容来源: react-grid-layout/react-draggable