cy.load()元件的丢失(cy.load() elements are lost)

2019-10-19 05:51发布

我想在浏览器中的电流图存储在服务器端,现在我测试如何。 我遇到了一个奇怪的问题:jsoning,decycling,字符串化和重新加载图形之后,元素不知何故而丢失。

var j = network_tab.cy.json();
j = JSON.decycle(j);
j = JSON.stringify(j);
network_tab.cy.load(j);

decycling图形之前,我不能字符串化它。 如果您在字符串化版本看,你可以看到,这些元素仍然存在,但加载后,他们都不见了。

也许我有一个问题,一般与cy.load()函数,但我希望你们能帮助我。

编辑:这个问题似乎是与字符串化功能。 然后我的问题归结如何使整个对象可读的负载()。

 An element must be of type `nodes` or `edges`; you specified `undefined`   
 console.error( msg );
 cytoscape.js (line 244)
 TypeError: obj._private is undefined

我想复制整个事情,但特别的元素,位置。 因此,它是更好的完全重新初始化图形和时是这样,我怎么添加节点的位置?

Answer 1:

(1)cy.json()是未记录(也可能没有准备好使用),直到2.1

(2)你不应该需要使用JSON.decycle()除非你在元素把你自己的数据必须相互引用-不是一般的好主意。

(3)在intialisation使用cy.json()为您提供了整个图形状态-不是cy.load() 你可以通过json.elementscy.load()而不是根对象, json

(4)您也可以得到为JSON通过每个元素(在测试和记录前2.1) ele.json()并建立自己的对象传递给cy.load()

(5)你有没有检查你传递对象cy.load() 你可以在这里发布呢? 你不是在传递一个JSON字符串cy.load()是吗?



文章来源: cy.load() elements are lost