【发布时间】:2020-10-04 00:40:53
【问题描述】:
在使用 konva 时,我使用一个按钮将形状多次添加到我的舞台上 使用类似于
的东西 document.getElementById('Rect').addEventListener( "click" , function () {
let layer = new Konva.Layer();
let item = new Konva.Rect({
x: 20,
y: 20,
width: 100,
height: 50,
fill: 'green',
stroke: 'black',
strokeWidth: 4,
draggable: true,
});
这会附加一个矩形形状,如果多次单击它还会附加额外的形状 我想为用户提供删除他希望使用按钮删除的特定形状的选项。 我尝试使用 Konva Tutorials 提供的上下文菜单教程,但是在实现那里可用的删除功能时
document.getElementById('delete-button').addEventListener('click', () => {
currentShape.destroy();
layer.draw();
});
无法删除添加到形状中的transformer层
document.getElementById('delete-button').addEventListener('click', () => {
tr.detach();
currentShape.destroy();
layer.draw();
});
我试图分离转换器/隐藏它,但它从形状的所有可用实例中删除它
如何解决这个问题,非常感谢!!
【问题讨论】:
-
你能做一个演示吗?正如我所见,您在每次单击按钮时都会添加一个新图层。我不确定这是正确的行为。此外,您需要重绘放置变压器的图层。
-
嘿,谢谢您的回复,演示链接:codepen.io/Tulsani/pen/OJMRQPr 在这里,如果我尝试使用舞台上的按钮添加两个矩形并删除一个,则剩余一个的变压器也会被删除。谢谢你的帮助!!
标签: javascript html canvas html5-canvas konvajs