[英]Fabric js Load canvas from JSON
我正在尝试实现保存和加载函数,但是当我尝试将json加载到画布中时出现错误。 错误消息显示“无法读取属性'async'未定义”,但我认为json输出看起来不错。 (我不习惯JavaScript,所以我不知道,如果问题出在结构或我的代码中......)
这是我的测试用例的jsFiddle链接: 示例小提琴
到目前为止,保存和加载功能是这样的:
var json = JSON.stringify(canvas);
canvas.clear();
canvas.loadFromJSON(json, function() {
canvas.renderAll();
});
谢谢你的帮助! :)
您可能已经使用一个(或多个)具有自定义属性的对象序列化了对象,或者您创建并序列化了一个新的自定义类。 看看这里可以更好地了解Canvas序列化的规则: http : //fabricjs.com/docs/fabric.Canvas.html#toJSON ;
尝试使用reviver函数运行代码( http://fabricjs.com/docs/fabric.Canvas.html#loadFromJSON )。
canvas.loadFromJSON(json, function() {
canvas.renderAll();
},function(o,object){
console.log(o,object)
})
它应该为你提供一个线索,告知它失败的负载点。 根据loadFromJson函数的运行方式检查序列化画布,您将找到罪魁祸首。
请参考这个答案并阅读评论: https : //stackoverflow.com/a/37545296/2779183
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.