didi / LogicFlow

A flow chart editing framework focusing on business customization. 专注于业务自定义的流程图编辑框架,支持实现脑图、ER图、UML、工作流等各种图编辑场景。

Home Page:https://site.logic-flow.cn

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[Bug Report]: 渲染好画布后,鼠标在画布上移动,一直发出报错Unable to preventDefault inside passive event listener invocation

Oct16th-Lcs opened this issue · comments

发生了什么?

渲染好画布后,鼠标在画布上移动,一直发出报错Unable to preventDefault inside passive event listener invocation
image
谷歌浏览器版本:124.0.6367.156
和Closes #369 问题一样,现在又出现了。
1122bug

logicflow/core版本

1.2.27

logicflow/extension版本

1.2.27

logicflow/engine版本

No response

浏览器&环境

Chrome

可以辛苦提供一个最小可复现示例吗,或者试试1.2.27之前的版本是否存在此问题

1、之前的版本也有这个问题,用@logicflow/core@1.2.19 @logicflow/extension@1.2.20版本智慧 发现缺少了tools文件夹和里面的文件,index.js里面却引入了导致在项目里使用插件功能报错了。
2、目前这个问题看着是这两个地方报错了

Np(this, "onDragOver", (function(t) {
                    if (t.preventDefault(), r.fakerNode) {
                        var e = r.clientToLocalPoint({
                            x: t.clientX,
                            y: t.clientY
                        })
                          , n = e.x
                          , o = e.y;
                        r.fakerNode.moveTo(n, o);
                        var i = r.fakerNode.getData();
                        r.lf.setNodeSnapLine(i),
                        r.lf.graphModel.eventCenter.emit(yo.NODE_DND_DRAG, {
                            data: i
                        })
                    }
                    return !1
                }
                )),
Np(this, "onDrop", (function(t) {
                    r.lf.graphModel && t && r.nodeConfig && (r.lf.addNode(Tp(Tp({}, r.nodeConfig), r.clientToLocalPoint({
                        x: t.clientX,
                        y: t.clientY
                    })), yo.NODE_DND_ADD, t),
                    t.preventDefault(),
                    t.stopPropagation(),
                    r.nodeConfig = null,
                    r.lf.removeNodeSnapLine(),
                    r.lf.graphModel.removeFakerNode(),
                    r.fakerNode = null)
                }
                

 ));

我自己去掉里面的t.preventDefault(),就好了

1、之前的版本也有这个问题,用@logicflow/core@1.2.19 @logicflow/extension@1.2.20版本智慧 发现缺少了tools文件夹和里面的文件,index.js里面却引入了导致在项目里使用插件功能报错了。 2、目前这个问题看着是这两个地方报错了

Np(this, "onDragOver", (function(t) {
                    if (t.preventDefault(), r.fakerNode) {
                        var e = r.clientToLocalPoint({
                            x: t.clientX,
                            y: t.clientY
                        })
                          , n = e.x
                          , o = e.y;
                        r.fakerNode.moveTo(n, o);
                        var i = r.fakerNode.getData();
                        r.lf.setNodeSnapLine(i),
                        r.lf.graphModel.eventCenter.emit(yo.NODE_DND_DRAG, {
                            data: i
                        })
                    }
                    return !1
                }
                )),
Np(this, "onDrop", (function(t) {
                    r.lf.graphModel && t && r.nodeConfig && (r.lf.addNode(Tp(Tp({}, r.nodeConfig), r.clientToLocalPoint({
                        x: t.clientX,
                        y: t.clientY
                    })), yo.NODE_DND_ADD, t),
                    t.preventDefault(),
                    t.stopPropagation(),
                    r.nodeConfig = null,
                    r.lf.removeNodeSnapLine(),
                    r.lf.graphModel.removeFakerNode(),
                    r.fakerNode = null)
                }
                

 ));

我自己去掉里面的t.preventDefault(),就好了

可以提供一个能运行复现问题的demo吗,这边没有复现问题,评论里有问题的方法只会在拖拽的情况下触发,和问题描述的场景不对应,定位不到问题呢

同样的问题,删除源码中t.preventDefault()后就好了。
image