根据文档 ( http://js.cytoscape.org/#eles.remove/http://js.cytoscape.org/#eles.restore ),可以使用 eles.restore()
方法从图表中恢复之前删除的元素。
但是我无法恢复此 facon 中的所有元素?
applyElementFilters = () => {
const excluded = [1, 2, 3];
// Restore all elements first, this apparently does nothing
this.cy.elements().restore();
if (excluded && excluded.length > 0) {
const excludedElements = this.cy
.elements()
.filter(element => excluded.includes(element.data("id")));
this.cy.remove(excludedElements);
}
};
最佳答案
如文档中所述,您已保存已删除
元素的引用以用于恢复它们。
// remove selected elements
var eles = cy.$(':selected').remove();
// ... then some time later put them back
eles.restore();
在您的情况下,当您通过执行此操作删除元素时
this.cy.elements().restore();
您可以将它们保存在变量或this
中,如下所示
this.__removedElements = this.cy.elements().remove();
// or
var removedElements; // global variable
removedElements = this.cy.elements().remove();
然后你可以像下面一样恢复它们
this.__removedElements.restore()
// or
removedElements.restore()
关于javascript - Cytoscape 不恢复元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47647518/