我已经创建了一个形状对象(例如konva.Rect
),并想在某些情况下重复使用它。
首先,将其添加到图层,一切都很好,例如拖动,移动.etc。然后通过触发事件将其destroy
从图层中移出,并在某个时间点使用layer.add(rectObj)
将其添加回图层中,形状损失了一些
属性,例如拖动,但使用remove
不会。
我检查了源代码,但对这种情况一无所知。唯一的区别是删除id
中的name
和destroy()
,
文档似乎太含糊了。
destroy() 删除并摧毁自己
删除() 从父母中移除自我,但不要破坏
因此想知道是否使用remove
和形状对象id
和name
仍会保留在图层中,对渲染或其他是否有重大影响?
如果使用destroy
,如何使其像首先添加到图层一样工作?
答案 0 :(得分:2)
我更新了文档。我希望现在更加清楚:
破坏::删除并销毁节点。永远杀死它!您不应该在destroy()之后重用节点。
删除::将自己从父母中删除,但不要破坏。您可以稍后重用节点。