Фабри c. js: Как сериализовать / десериализовать некоторые глобальные данные? Как расширить объект холста? - PullRequest
0 голосов
/ 24 февраля 2020

Как я могу добавить дополнительные свойства к объекту Canvas, чтобы они были сериализованы / десериализованы? Например, я хотел бы сохранить имя для данных, которые я получаю с canvas.to JSON () и которые я храню на стороне сервера.

Имеет ли смысл расширять холст таким образом? Или вы бы порекомендовали создать «метаобъект», содержащий мои дополнительные данные и одно свойство для холста json?

1 Ответ

1 голос
/ 24 февраля 2020

Вы можете передать массив с дополнительными свойствами в метод Canvas.toJSON() следующим образом:

const canvas = new fabric.Canvas('c')
canvas.myProp = 'MyCanvas'

const serializedCanvas = canvas.toJSON(['myProp'])
console.log(serializedCanvas.myProp) // 'MyCanvas'

Обратите внимание, что этот массив также передается в метод _toObject() каждого объекта во время сериализации, поэтому имеет смысл чтобы свести список пользовательских свойств к минимуму.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...