在 Cytoscape JS 中撤消删除节点操作

undo remove nodes operation in Cytoscape JS

当您在 cytoscape JS 中删除节点时(使用 cy.remove()),连接到这些节点的边也会从图中删除。 cy.remove() 的描述说它从图中删除元素并 returns 它们。 但是,返回的数据不包括删除的边。

结果是下面的操作顺序

removedData = cy.remove(someNodes); cy.add(removedData);

一定要修改图表,因为它们可能会导致一些边消失。

你应该如何在 Cytoscape JS 中执行可逆删除操作?

您可以只明确地包括边缘:

removedData = cy.remove(someNodes.union(someNodes.connectedEdges()));

然后removedData.restore()cy.add(removedData)都将恢复节点和边。

借助 CytoscapeJS 2.5.4,我可以运行 删除并恢复以下连接节点

removedData = cy.remove("#node2");

--pause--

removedDate.restore();