【发布时间】:2019-09-03 10:18:49
【问题描述】:
我试图从每个圆圈和线条中清除图层(完全删除它),但将图像保留在背景中。
如果我使用layer.clear(),它也会删除图像。
问题:如何清除图层但避免删除图像?
【问题讨论】:
标签: javascript konvajs
我试图从每个圆圈和线条中清除图层(完全删除它),但将图像保留在背景中。
如果我使用layer.clear(),它也会删除图像。
问题:如何清除图层但避免删除图像?
【问题讨论】:
标签: javascript konvajs
layer.clear() 不要从场景中移除对象。它只是清除画布元素,在下一个layer.draw() 将再次绘制所有对象。
您需要删除不再需要的对象,而不是 layer.clear()。从演示中,我看到您需要删除线条和圆圈。您可以使用layer.find(selector) 找到该节点并销毁它们。
document.getElementById("btn").addEventListener("click", () => {
layer.find('Line').destroy();
layer.find('Circle').destroy();
layer.draw();
});
【讨论】:
layer.removeChildren,不知何故它工作得很好。这是更好的方法吗?还是我应该使用你的?