微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用Konva将撤回的形状拉回到场景中?

如何解决如何使用Konva将撤回的形状拉回到场景中?

我使用remove()方法从场景中删除了矩形,如何绘制回去?

文档说:“从父级中删除节点,但不要销毁。以后可以重用该节点。”

Link to documentation

我找不到任何线索 谢谢

解决方法

谢谢您的回应,我实际上找到了一个简单的解决方法。

我使用.hide()和.show()方法是因为我想保持对象完整以备后用,而当我不再需要它时,我只会对形状进行.destroy()。

缺点是您需要更多的内存来保留所有内容,但是场景中的形状很少可以忽略不计。

,

只需通过变量保留对节点的引用。例如,在下面的代码中,我将一个节点添加到layer1,将其删除,然后将其添加到layer2。

var layer1 = new Konva.Layer();
stage.add(layer1);
Var node = new Konva.WhateverShape({....});
layer1.add(node);
layer1.draw();
...
...
var layer2 = new Konva.Layer();
stage.add(layer2);
node.remove();   // at this time the node exists but is not on the stage
layer2.add(node);
layer2.draw();  // now the node is visible again.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。