我目前正在开展涉及KineticJS的项目。
我必须不断地动态创建和删除形状,但似乎无法弄清楚如何做后者。我一直在努力:
$ myLayer.remove(myShape)
因为这是大多数帖子似乎推荐的内容。但是,文档说这会从舞台上移除图层而不是图层中的形状。当我在项目中尝试这个时,它实际上从舞台中移除了该层。
我做错了什么或是否有其他方法从图层中删除形状?
答案 0 :(得分:16)
有两个功能可能会有所帮助。
childContainer.remove()
从其父级中删除childContainer。parentContainer.removeChildren()
从此容器中删除所有子项。修改:这也适用于形状。只需重新绘制图层。
myShape.remove();
myLayer.draw();
答案 1 :(得分:2)
在Kinetic 4.0和最新版本之间,删除(子)停止工作。 removeChild(child)也不起作用。
我使用child.remove();
解决了这个问题答案 2 :(得分:0)
你可以使用动力学函数的原型
Kinetic.Node.prototype.remove.call(removed_object);
baselayer.draw();