在两个 KonvaJS 画布之间拖动形状
Drag shapes between two KonvaJS canvases
在 KonvaJS 中是否可以将形状(如矩形)从一个阶段拖到另一个阶段?有什么建议吗?
您只需要监听 dragmove
事件,然后在形状超出视野时将其移动到另一个舞台。
像这样:
circle.on('dragmove', () => {
if (circle.getStage() === stage1 && circle.y() > stage1.height()) {
circle.y(0)
circle.moveTo(layer2);
layer1.draw();
layer2.draw();
}
if (circle.getStage() === stage2 && circle.y() < 0) {
circle.y(stage1.height());
circle.moveTo(layer1);
layer1.draw();
layer2.draw();
}
});
条件可能会有所不同,具体取决于您的用例。
在 KonvaJS 中是否可以将形状(如矩形)从一个阶段拖到另一个阶段?有什么建议吗?
您只需要监听 dragmove
事件,然后在形状超出视野时将其移动到另一个舞台。
像这样:
circle.on('dragmove', () => {
if (circle.getStage() === stage1 && circle.y() > stage1.height()) {
circle.y(0)
circle.moveTo(layer2);
layer1.draw();
layer2.draw();
}
if (circle.getStage() === stage2 && circle.y() < 0) {
circle.y(stage1.height());
circle.moveTo(layer1);
layer1.draw();
layer2.draw();
}
});
条件可能会有所不同,具体取决于您的用例。