React-dnd: 不变违规:部署到服务器时预期的拖放上下文查找

创建于 2019-07-31  ·  11评论  ·  资料来源: react-dnd/react-dnd

我的应用程序在我的本地环境中运行良好,但是当我部署到服务器时,控制台会在部署到服务器时打印错误:“不变违规:预期的拖放上下文查找”。
我完全不知道出了什么问题。 你能帮我就什么可能是根本原因给我一些建议吗?
我的本地节点版本是 8.11.3。 我在服务器上使用8.11.3构建和一个express服务器来提供默认云节点环境(v6.7.0)下的静态文件。
我在用:
"react-dnd": "^9.0.1"
"react-dnd-html5-backend": "^9.0.0"
"react-dnd-touch-backend": "^9.0.2"

最有用的评论

你应该像这样包装你的测试文件组件:

<DndProvider backend={HTML5Backend}> <Component /> </DndProvider>

所有11条评论

我将我的软件包升级到最新版本,并且在我的本地环境中发生了错误。

这是因为我有一个 ^ 并且我在本地使用 yarn 但在云中使用 npm 来构建,所以我在本地和开发中得到了不同的包版本。
当我使用 9.3.3 和 9.3.2 时,我得到了同样的错误:'不变违规:预期拖放上下文查找。 我失去了上下文。
9.2.1 很好。

+1 我也收到了

环境看起来像:

"react": "^16.8.6", "react-dnd": "^9.3.4", "react-dnd-html5-backend": "^9.3.4", "react-dom": "^16.8.6",

这可能意味着您将DndProvider包装在组件树上的组件太低。

你解决了吗? 我遇到了同样的问题,结果我的应用程序中捆绑了多个不同版本的 react-dnd 库。 希望这有助于某人。

我也面临同样的问题。 有没有人找到解决办法,分享一下。

我没有导出<DndProvider /> 。 一旦我这样做了,一切都很好。

你应该像这样包装你的测试文件组件:

<DndProvider backend={HTML5Backend}> <Component /> </DndProvider>

你应该像这样包装你的测试文件组件:

<DndProvider backend={HTML5Backend}> <Component /> </DndProvider>

我真的希望可以在此页面http://react-dnd.github.io/react-dnd/docs/overview上获得此信息

否则,用户必须滚动查看棋盘的整个实现才能找到它。

我也收到了Expected drag drop context错误。 对我来说,这仅在DndProvider是使用useDrag的组件的直接父节点时才有效。 虽然它适用于旧版本(9.0.0)。 然而,提示

这应该安装在我们应用程序的顶部附近(意味着DndProvider

肯定是错的。

@markusmauch

谢谢 - 这让我很头疼。 是的,这里的文档绝对不准确。

此页面是否有帮助?
0 / 5 - 0 等级