fabric.js - 向形状添加自定义属性
fabric.js - Adding custom properties to a shape
我正在尝试为矩形添加一些自定义属性。
我已尝试根据 fabric.js 文档设置 toObject 属性。
let rect = new fabric.Rect();
rect.toObject = ((toObject) => {
return () => {
return fabric.util.object.extend(toObject.call(this), {
name: 'some name'
});
};
})(rect.toObject);
this.canvas.add(rect);
当我点击 canvas
的保存时
this.canvas.toJSON();
我得到一个
错误类型错误:this.callSuper 不是函数。
因为this
箭头函数中的值不正确。要么将其更改为正常功能,要么传递 rect object
而不是 this
.
const canvas = new fabric.Canvas('c')
const rect = new fabric.Rect();
rect.toObject = (function(toObject) {
return function(propertiesToInclude) {
return fabric.util.object.extend(toObject.call(this, propertiesToInclude), {
name: 'some name'
});
};
})(rect.toObject);
canvas.add(rect);
console.log(canvas.toJSON())
<script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/3.4.0/fabric.js"></script>
<canvas id='c'></canvas>
我正在尝试为矩形添加一些自定义属性。
我已尝试根据 fabric.js 文档设置 toObject 属性。
let rect = new fabric.Rect();
rect.toObject = ((toObject) => {
return () => {
return fabric.util.object.extend(toObject.call(this), {
name: 'some name'
});
};
})(rect.toObject);
this.canvas.add(rect);
当我点击 canvas
的保存时this.canvas.toJSON();
我得到一个 错误类型错误:this.callSuper 不是函数。
因为this
箭头函数中的值不正确。要么将其更改为正常功能,要么传递 rect object
而不是 this
.
const canvas = new fabric.Canvas('c')
const rect = new fabric.Rect();
rect.toObject = (function(toObject) {
return function(propertiesToInclude) {
return fabric.util.object.extend(toObject.call(this, propertiesToInclude), {
name: 'some name'
});
};
})(rect.toObject);
canvas.add(rect);
console.log(canvas.toJSON())
<script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/3.4.0/fabric.js"></script>
<canvas id='c'></canvas>