【发布时间】:2013-02-03 11:25:37
【问题描述】:
我正在构建一个基于 kinetic.js 的交互式环境。我希望能够保存和加载画布的状态以及元数据。
我已经知道我可以使用stage.toJSON() 来序列化/保存并使用Kinetic.Node.create(stageJson, 'container') 来加载。但我想向该序列化添加任意数据,以跟踪我的环境将定义/使用的其他属性。
标准 kinetic.js 序列化示例:
{
"attrs": {
"width": 578,
"height": 200,
"x": 0,
"y": 0
},
"nodeType":"Shape",
"shapeType":"Rect"
}
我希望能够保存/加载的示例:
{
"attrs": {
"width": 578,
"height": 200,
"x": 0,
"y": 0
},
"nodeType":"Shape",
"shapeType":"Rect",
"metaData": {"foo": "bar"}
}
这里最好的方法是什么?我可以在传递元数据之前破解/包装序列化和加载函数以添加/拉出元数据,但这似乎笨重且难以实现,特别是如果有很多嵌套层和形状需要解析。我可以保存两个完全独立的序列化,一个由 kinetic.js 生成,另一个由我自己的代码生成,但同样很笨重。谁有更好的主意?
【问题讨论】:
标签: javascript html5-canvas kineticjs