amis 编辑器内拖拽问题

jei2mxaa  于 4个月前  发布在  其他
关注(0)|答案(1)|浏览(88)
描述问题:

在编辑器内进行拖拽时,startDrag 函数被调用两次,导致每次拖拽都会在 body 中插入一个 ae-DragImage 拖拽跟随元素。由于amis线上header背景是纯色,遮挡了ae-DragImage无法看到这个元素;只有在背景为渐变色时才能发现。此问题在试图结构中拖拽不会出现,但在编辑器内拖拽时会触发。

截图或视频:

如何复现

直接在编辑器内对元素进行拖拽,打开控制台即可发现会有未销毁的拖拽跟随元素

ttp71kqs

ttp71kqs1#

问题代码应该是在
amis/packages/amis-editor-core/src/component/HighlightBox.tsx

amis/packages/amis-editor-core/src/plugin/BasicToolbar.tsx内传递了子元素按钮的事件处理

父元素外层 div和子元素(按钮)都有 onDragStart 事件,导致事件冒泡,触发两个处理器,导致前面说到的问题。

相关问题