我正在做一個專案,我需要使用 React-dnd 包實作拖放功能。這是我能夠實作的。但問題是,目標組件(將拖放可拖動專案)包含mouseup事件,該事件在每個場景中都會觸發,除非我將任何組件放入其中。即使在下降的情況下也需要觸發它,但它不會被觸發。我也嘗試過手動觸發,它觸發了,但偏移量等值與預期不符。
我有共享示例代碼沙箱,其中 Dustbin.tsx 包含當任何可拖動組件放入其中時不會觸發的 mouseup 事件。謝謝。
沙盒鏈接:https ://codesandbox.io/s/dawn-snowflake-ej08d0?file=/src/Dustbin.tsx
uj5u.com熱心網友回復:
為什么使用onmouseup?
當用戶在元素上釋放滑鼠按鈕時,會發生 onm ouseup 事件。
如果您想檢測是否有東西掉入該容器,請使用ondrop
當可拖動元素被拖放到元素中時執行 JavaScript:
return (
<div
ref={drop}
style={{ ...style, backgroundColor }}
onDrop={() => console.log("dropped")}
>
{isActive ? "Release to drop" : "Drag a box here"}
</div>
);
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/450045.html
標籤:javascript 反应 反应-dnd onmouseup
上一篇:編輯訊息時訊息內容必須為非空字串
