Javascript Fabric.js:如何获取属性&x27;组中对象的值?
我正在使用Fabric.js创建绘图画布。我可以知道在组对象中是否有获取对象属性值的方法吗 例如: 我创建了一个矩形和一个文本对象,并将它们组合在一起Javascript Fabric.js:如何获取属性&x27;组中对象的值?,javascript,canvas,fabricjs,Javascript,Canvas,Fabricjs,我正在使用Fabric.js创建绘图画布。我可以知道在组对象中是否有获取对象属性值的方法吗 例如: 我创建了一个矩形和一个文本对象,并将它们组合在一起 new fabric.group([rect1,text1],{ top:100, left:100 }); 我试过如下方法: var objsInCanvas = canvas.getObjects(); for (obj in objsInCanvas) { return objsInCanv
new fabric.group([rect1,text1],{
top:100,
left:100
});
我试过如下方法:
var objsInCanvas = canvas.getObjects();
for (obj in objsInCanvas) {
return objsInCanvas[obj].get('text')
}
但它对我来说没有文本的价值。有人能给我一个建议吗?我还没有足够的代表对此发表评论,但我可以看到一些可能导致这种情况的因素。如果没有更多的代码,我将不得不假设一些事情 首先,在实例化一个新组时,需要将结构对象大写
var group = new fabric.Group([rect1, text1],{
...
});
第二,如果没有,则需要将组添加到画布中
canvas.add(group);
我肯定你在代码里这么做了,但是呃。然后我们可以得到好东西
for循环会捕获画布上的所有对象,对吗?结果表明,如果您的对象在一个组中,那么您是在抓取该组本身,而不是其中的单个对象。您还需要遍历该组中的所有对象以从中获取任何属性
我快速地拉了一下小提琴,看看是否能让它工作。它应该让你知道你需要做什么
您可以通过item()方法访问组中的单个对象: 例如:
group.item(0).set({
text: 'trololo',
fill: 'white'
}); //Retrieve item(0) and sets its properties
group.item(1).setFill('red'); ////Retrieve item(1) and sets its properties
感谢您在小提琴中提供的详细示例!小提琴是一个了不起的帮助!