konvajs 中的 `destroy` 和 `remove` 有什么区别

What's the difference between `destroy` and `remove` in konvajs

我已经创建了一个形状对象(如 konva.Rect)并希望在某些情况下重用它。

首先把它添加到图层中,一切都很好,比如拖动、移动等。然后destroy它从某个触发事件的图层,并在某个时间点,将它添加回layer.add(rectObj)图层,形状丢失了一些 属性喜欢拖,但是用remove不会。

我查看了源代码,但对这种情况一无所知。唯一不同的是删除idname in destroy(),

在文档中似乎太模糊了。

destroy() remove and destroy self

remove() remove self from parent, but don't destroy

所以想知道使用remove和形状对象idname是否会保留在图层中,对渲染或其他有什么重大影响吗?

如果使用destroy,如何让它像第一次添加到图层一样工作?

我更新了文档。我希望现在更清楚了:

https://konvajs.org/api/Konva.Node.html#destroy

destroy: remove and destroy a node. Kill it forever! You should not reuse node after destroy().

https://konvajs.org/api/Konva.Node.html#remove

remove: remove self from a parent, but don't destroy. You can reuse node later.