Fix issue with over being null in onDragEnd #1167
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I am currently implementing drag and drop behavior within our application and I've noticed that sometimes the
over
property is set to null. Found a issue for this one as well: #391After some investigation, I was able to reproduce this on storybook in the
MultipleContainers
example as well, as I first thought I made a mistake in the implementation. Its very hard to reliably reproduce it so pardon me for not providing a codesandbox. I tried writing a test for this but it turns out this is not very easy to achieve.Ways on how to reproduce (takes quite some time):
Draggable
.over
property you get throughonDragEnd
is sometimesnull
.It really feels like a timing issue, since the
sensorContext.over
is set through thisuseIsomorphicLayoutEffect
:dnd-kit/packages/core/src/components/DndContext/DndContext.tsx
Lines 579 to 613 in 5c58f0f
By setting
over
directly in thesensorContext
instead of relying on theuseIsomorphicLayoutEffect
to fire before theonDragEnd
callback is called.