hook 内部函数使元素可以直接携带额外属性
支持toJSON 和 loadFromJSON
导入导出的时候会自动携带上extraData
demo
varrect = newfabric.Rect({
top:100,
left:100,
width:60,
height:70,
fill:"red"
// selectable: false
});
rect.extraData = {
msg:"2423423"
}
发现一种更加有效的方法 只需要在导出的时候 增加导出数组
canvas.toJSON(["extraData"])
以下代码可以放弃
code
fabric.Object.prototype.toObject = (function(toObject) {
return function() {
return fabric.util.object.extend(toObject.call(this), {
extraData:this.extraData
})
}
})(fabric.Object.prototype.toObject)
fabric.Object._fromObject = (function(fromObject) {
return function(className, object, callback, extraParam) {
return fromObject.call(this,className, object, function(instance){
instance.extraData = object.extraData;
callback && callback.call(this,instance)
}, extraParam);
}
})(fabric.Object._fromObject)
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。