react-sortable-hoc 与 table

react-sortable-hoc with table

我正在尝试使用 react-sortable-hoc with bulma tables,因此 SortableItem 将是 tr。问题是这样的:要使 table 行在 bulma 中获得样式,它需要有一些带有 class table 的父 table 元素。当试图移动 tr 时,因为它刚好放在 body 元素的末尾之前,所以它不再有 table 父元素,所有样式都丢失了并且行崩溃了。

我该如何解决这个问题?我已经看到其他拖放库(不是特定于 React 的)通过本质上截取元素并移动 img 来解决此类问题......如果我可以操纵tr 附加到正文。如果我不能用 react-sortable-hoc 解决问题,是否还有另一个轻量级 dnd-react-library 可以做到这一点?在此先感谢您的帮助。

我最终使用提供的事件(updateBeforeSortStartonSortStart)的组合解决了这个问题。 方法是这样的:

  1. 获取 updateBeforeStart 中的节点,使用 window.getComputedStyle
  2. 保存其所有子节点的样式
  3. 在 onSortStart 中,获取行(这被硬编码为 document.querySelector(body > tr:last-of-type),这有点难看并将样式应用于其所有子项

这是概述 here 并由我稍作修改。