有没有办法让 cystoscape 对象与 DOM 元素相关联?

Is there a way of getting the cystoscape object associated with a DOM element?

我目前在做以下事情:

let $cy = $('#cy');
let cy = cytoscape({
   container: $cy,
   ...
});

$cy.data('cytoscape', cy);

以上内容允许我重新获取 cytoscape 对象(例如在事件处理程序中),如下所示:

let cy = $cy.data('cytoscape');

是否有获取 cytoscape 对象的内置方法,这样我就可以避免做所有这些工作(并且在技术上会弄乱图书馆拥有的元素)?

通常假定您会将 Cytoscape 实例保存在代码中的共享变量中,因此您不需要从 DOM 对象中获取它。

您可以获得与 DOM 元素关联的 Cytoscape 实例,如下所示:

 document.getElementById('cy')._cyreg.cy

请注意,据我所知,这没有记录在案。