反应美丽的免打扰 - "Unable to find draggable with id: X"



我正试图使用react beautiful dnd对列表进行拖放排序,但我的元素是不可拖动的,我得到了Unable to find draggable with id: X。我已经用文档中的示例交叉检查了我的代码,但找不到需要修复的内容。我使用常数id作为keydraggableId道具。

代码:CodeSandBox

编辑1:我希望代码能够拖动和重新排列项目,但由于状态更新未实现,将返回到它们的初始位置

刚刚遇到了同样的问题。尝试禁用React的严格模式。这帮我搞定了。https://reactjs.org/docs/strict-mode.html

这里有一个关于react beautiful dnd的公开问题https://github.com/atlassian/react-beautiful-dnd/issues/2350.希望与严格模式的兼容性将很快得到修复。在此之前,删除严格模式可以解决此问题。

这里的聚会迟到了,但我也面临同样的问题。事实证明,react-beautiful-dnd的一个分支叫做@hello-pangea/dnd。你可以在这里找到它。

该fork具有相同的API,但与react-beautiful-dnd不同,它在严格模式下工作,并且似乎是主动维护的。

切换很容易,因为它们使用相同的API。只需添加包装

npm i @hello-pangea/dndyarn add @hello-pangea/dnd

然后从更改您的进口

import {
Droppable,
Draggable
} from "react-beautiful-dnd";

import {
Droppable,
Draggable
} from "@hello-pangea/dnd";

注意,@hello-pangea/dnd是基于typescript的,这意味着这些类型也直接包含在这个包中。

我在nextjs中遇到了同样的问题

我进入next.config.js文件,只设置了reactStrictMode to false

相关内容

  • 没有找到相关文章

最新更新