V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yazoox
V2EX  ›  React

有兄弟使用过 react-dnd 这个组件么?使用它之后,默认的 drag and drop events 都不能工作了。

  •  
  •   yazoox · 2021-11-29 16:38:13 +08:00 · 1371 次点击
    这是一个创建于 1081 天前的主题,其中的信息可能已经有所发展或是发生改变。

    code sandbox sample

    repro steps:

    1. 打开上面的 code sandbox 链接,在棋盘上拖动棋子,没有问题。这个是 react-dnd 官方的代码。
    2. 然后,我添加了一段代码,使用了 ul/li 最基本的元素,并且,添加了标准的 drag events ,比如,ondragenter, ondragover and ondrop ,等等。
    3. 结果,不工作,完全不触发。绑定在 drag source 上事件,ondragstart 还是可以触发的(打印 log )。但是剩下的,所有和 drop target 相关的事件,全部都不能正常触发。
    4. 不论 list items 是放在 DndProvider 内部,还是外部,都不工作。
    5. 直接把 <Example /> 删除掉后,拖放就能够正常工作了。
    6. 我又找了个第三方的 treeview 组件尝试了一下,情况同上。

    p.s.
    为什么不直接使用 drag and drop events ,或者全部使用 react-dnd 。这个是历史问题,暂时没有办法全面更改。

    yazoox
        1
    yazoox  
    OP
       2021-12-14 14:02:19 +08:00
    我找到解决方案,详细情况,可以查看 Github 上面的 issue #3344 ( https://github.com/react-dnd/react-dnd/issues/3344)
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5315 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 05:47 · PVG 13:47 · LAX 21:47 · JFK 00:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.