Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在fabric js上将对象添加到组_Javascript_Fabricjs_Fabricjs2 - Fatal编程技术网

Javascript 如何在fabric js上将对象添加到组

Javascript 如何在fabric js上将对象添加到组,javascript,fabricjs,fabricjs2,Javascript,Fabricjs,Fabricjs2,我想动态地向组中添加rect。但当我添加over top或left side时,组的左上角跳转到添加的rect的左上角。请帮我解决这个问题 如何添加矩形: let canvas = new fabric.Canvas('draw'); let group = new fabric.Group('', { objectCaching: false, hasControls: false,

我想动态地向组中添加rect。但当我添加over top或left side时,组的左上角跳转到添加的rect的左上角。请帮我解决这个问题

如何添加矩形:

let canvas = new fabric.Canvas('draw');
let group = new fabric.Group('', {
                     objectCaching: false,
                     hasControls: false,
                     hasBorders: false,
                     hasRotatingPoint: false,
                     subTargetCheck: true,
                });
group.addWithUpdate(new fabric.Rect({top:0,left:0,width:100,height:200}));
canvas.add(group);
canvas.renderAll();
group.on('moving', move);
function move(e) {
    let trCorner = e.target.calcCoords().tr;
    let viewPortTSide = e.target.canvas.calcViewportBoundaries().tl.y;
    if (viewPortTSide - trCorner.y < -10) {
        group.addWithUpdate(new fabric.Rect({top:-400,left:-200, height: 300, width: 200}))
    }
}

let canvas=newfabric.canvas('draw');
let group=新结构组(“”{
objectCaching:false,
哈斯:错,
哈斯:错,
hasRotatingPoint:false,
副目标切克:没错,
});
addWithUpdate(newfabric.Rect({top:0,left:0,width:100,height:200}));
canvas.add(组);
canvas.renderAll();
“移动”组,移动组;
功能移动(e){
让trCorner=e.target.calccoods().tr;
让viewPortTSide=e.target.canvas.CalcViewPortBounders().tl.y;
如果(视口侧-trCorner.y<-10){
group.addWithUpdate(newfabric.Rect({top:-400,left:-200,高度:300,宽度:200}))
}
}

为什么要在移动时将rect添加到组中?如果你继续拖动,它会增加很多物体。你们想要实现什么?那个只是一个例子,在真实的项目中,我需要动态加载图像。有这么多的代码,我附加了rectsI示例,我不想使用多个组,这将很难定位和向组中添加新项目。我可以只向组中添加新的rect,然后将其移动到组中的某些坐标吗?执行
group.add(rect);group.addWithUpdate()