我使用以下代码序列化我的画布:
var user_canvas = JSON.stringify(canvas.toDatalessObject());
一切正常。然后我使用以下代码加载序列化画布,其中' serial'是序列化画布的var:
canvas.loadFromJSON(serial,canvas.renderAll.bind(canvas));
所有元素都按预期显示在页面上。虽然我无法弄清楚如何引用这些对象,canvas.getObjects()
会出现一个空白数组,但是如果我console.log(canvas)
我可以看到里面的元素,我就是无法引用它们。我怎么能这样做?
答案 0 :(得分:0)
设置5秒的超时后,项目出现在getObjects()
中,似乎我只是在加载它们之前尝试访问它们。
编辑:事实证明canvas.loadFromJSON
您可以使用以下内容访问变量:
canvas.loadFromJSON(serialized_canvas,canvas.renderAll.bind(canvas),function(o, object) {
console.log(object);
}