Fabric.js: 如何serialize/deserialize一些全局数据?如何扩展 canvas 对象?
Fabric.js: How to serialize/deserialize some global data? How to extend the canvas object?
如何向 canvas 对象添加额外的属性,以便它们获得 serialized/deserialized?例如。我想为使用 canvas.toJSON() 获得的数据存储一个 name 并存储在服务器端。
这样扩展 canvas 有意义吗?或者你会建议创建一个 "meta object" 包含我的附加数据和一个 属性 用于 canvas json?
您可以将具有附加属性的数组传递给 Canvas.toJSON()
方法,如下所示:
const canvas = new fabric.Canvas('c')
canvas.myProp = 'MyCanvas'
const serializedCanvas = canvas.toJSON(['myProp'])
console.log(serializedCanvas.myProp) // 'MyCanvas'
请注意,此数组在序列化期间也会传递到每个对象的 _toObject()
方法中,因此将自定义 属性 列表保持在最低限度是有意义的。
如何向 canvas 对象添加额外的属性,以便它们获得 serialized/deserialized?例如。我想为使用 canvas.toJSON() 获得的数据存储一个 name 并存储在服务器端。
这样扩展 canvas 有意义吗?或者你会建议创建一个 "meta object" 包含我的附加数据和一个 属性 用于 canvas json?
您可以将具有附加属性的数组传递给 Canvas.toJSON()
方法,如下所示:
const canvas = new fabric.Canvas('c')
canvas.myProp = 'MyCanvas'
const serializedCanvas = canvas.toJSON(['myProp'])
console.log(serializedCanvas.myProp) // 'MyCanvas'
请注意,此数组在序列化期间也会传递到每个对象的 _toObject()
方法中,因此将自定义 属性 列表保持在最低限度是有意义的。