【发布时间】:2020-01-03 04:47:20
【问题描述】:
我有一个现有的代码库,它创建一个舞台,然后添加一些图层,并在其中一个图层中绘制 KineticJS 多边形。现在,当用户单击舞台外的元素时,我需要更新多边形的背景。
我已经设法获得了舞台细节,然后是我想要更改的确切多边形,还设法使用.SetFill 方法更改了fill 多边形。当我访问多边形的属性时,我看到填充属性设置正确。但是多边形的背景没有改变。
在.SetFill 函数之后我们需要做些什么吗?或者,在创建 KineticJS 形状后更改/更新其填充的正确方法是什么?我没有看到任何更新或重绘方法...
代码在 Clojurescript 中,所以我没有确切的 JS 代码,但这些是我拥有的步骤:
polygon.setFill(color hexcode)layer.add(polygon)stage.add(layer)stage.draw()
【问题讨论】:
-
尝试在更改背景后触发
layer.draw()函数,并通过以下资源,可能是由于KineticJS的缓存问题。参考:github.com/lavrton/kineticjs-tips-and-tools -
我可以知道为什么这个问题被否决了吗?是不是漏了什么
-
只有投反对票的人才能回答这个问题:D,无论如何,您是否可以在 jsfiddle 或类似的东西上创建代码的 sn-p?
-
不幸的是,我不能,因为它在 Clojurescript 中。如果 Clojurescript 中有类似于 JSFiddle 的东西,我会非常喜欢!
-
我尝试触发 layer.draw() ,但它没有工作。我现在正在尝试其他选择。谢谢顺便说一句
标签: javascript kineticjs