【发布时间】:2019-12-11 20:30:11
【问题描述】:
【问题讨论】:
标签: javascript reactjs drag-and-drop react-dnd
【问题讨论】:
标签: javascript reactjs drag-and-drop react-dnd
是的,您必须将坐标保存在您所在州的某处。然后使用 useDrop 钩子 (doc) 将箭头的新坐标推送到您的状态,当它下降到新位置时。
总结一下,流程如下:
useDrag 使您的箭头组件可拖动
useDrag 一个 begin 回调 - 修改您的状态 - 将在箭头开始被拖动时调用end 回调执行相同操作begin 和 end 函数中设置的状态项更改其外观使用 useDrop 使您的箭头组件可放置
useDrag,传递一个drop函数push来表示新的箭头坐标。由于您不提供任何代码,因此很难为您提供更多帮助。如果原因是你不知道从哪里开始,请看看这个惊人的step-by-step tutorial。
但是,请记住,所有这些都会触发大量重新渲染。就个人而言,对于这个王者,我喜欢避免使用第三方库,以控制性能,并倾向于尽可能接近 dom(例如,使用 js 事件而不是在拖动时不断更新状态)。
【讨论】: