防止在Cytoscape JS + EdgeHandles中创建边缘

时间:2018-07-16 08:11:48

标签: javascript cytoscape.js

阻止从节点A 节点B 的多个边的最佳方法是什么?

我当前正在使用地图(纯JSON对象)来跟踪添加的边,并且如果从 A B 的边已经存在,则将其删除,但是解决方案看起来不太优雅。

我以为我发现了解决方案,它查看了 edgeType 事件,因为该事件将源节点和目标节点作为参数,返回null / undefined将阻止添加边。问题是我实际上没有获得目标 node ,而是获得了另一种对象,从而使该事件无用。我不明白有什么用,实际上似乎是一个错误。

1 个答案:

答案 0 :(得分:0)

另一种对象可能是edgeHandle对象,它的数据中只有id属性。您可以通过添加一些条件来忽略它。但是,如果将鼠标悬停在实际的目标节点上,则该edgeHandle元素将被替换为您在其上悬停过的element(node)。