Почему работает Drag в простом примере activ-dnd hooks-sorttable-simple? - PullRequest
0 голосов
/ 12 июля 2019

Я пытаюсь использовать новый API-интерфейс ловушек в реакции-dnd аналогично примеру сортировки , но мой код работает неправильно, и я понял, что не понимаю, почему пример работает.

Может ли кто-нибудь объяснить, почему флаг isDragging в результатах сбора возвращается через свойства, возвращаемые из usDrag, в нужный компонент функции после его перемещения в другой индекс?

Мое понимание хуков состоит в том, что они зависят от порядка их вызова и под покровом useDrag сохраняет результаты сборщика в хуке useState. Когда вы перемещаете карту, все компоненты функции перерисовываются, во время этого перезапуска вызывается useDrag, результаты сборщика извлекаются из состояния внутри useDrag и возвращаются. При перетаскивании элемента он меняет порядок, и его поле isDragging не должно перемещаться вместе с ним, а остается «привязанным» к исходному индексу. Это именно та ошибка, которую я вижу в своем коде, но каким-то образом пример работает. Что я упускаю (может быть что-то фундаментальное)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...