fabric.js转化对象时保存自定义属性(fabricjs丢失自定义属性处理)

我们在用 fabric.js 操作canvas画版添加各种形状/图片时,有时候会自己添加对应的自定义属性,当涉及到撤销/恢复时,要保存之前的canvas的数据以及状态,此时一般通过toJSON()toDatalessJSON()toDatalessObject()等来获取canvas中的内容进行保存。但是自定义属性是保存不了的。

转化成对象时保存自定义属性

canvas.toJSON(['id']);

canvas 的 toDatalessJSON() toDatalessObject()toJSON()toObject() 都可以有一个参数 propertiesToIncludeopt

  • propertiesToIncludeopt:要包含的属性选项,类型为 Array;

把需要保存的属性写成一个数组的形式在进行转化保存即可。

const a = canvas.toJSON(['id1', 'id2']);
const b = canvas.toDatalessJSON(['id1', 'id2']);
const c = canvas.toDatalessObject(['id1', 'id2']);
const d = canvas.toObject(['id1', 'id2']);

 

 

文章:fabric.js转化对象时保存自定义属性

posted @ 2020-12-30 16:03  rachelch  阅读(1566)  评论(0编辑  收藏  举报