首页 > 解决方案 > 如何在 Konva 舞台上设置 CSS 属性?

问题描述

我刚开始使用 Konva,所以我还在学习它是如何工作的。我希望能够在 Konva 创建为“舞台”的 Canvas 元素上动态设置一些 CSS 属性。举个简单的例子,假设我想添加一个边框。到目前为止我在网上看到的是这样的:

        const stage = new Konva.Stage({
            container: 'container',
            width: 340,
            height: 300
        });

        stage.getContainer().style.border = '1px solid black';

但是,这不起作用,因为“ getContainer() ”似乎不再可用。(至少,VS Code 给了我一个错误)。我假设这是不推荐使用的代码。

我总是可以添加一个 Rectangle 并在那里绘制边框,但这里的边框并不是真正的问题,矩形是一种解决方法。必须有某种方法可以将 CSS 直接添加到画布上吗?顺便说一句,我需要这是动态的。例如,如果我想要边框,我可以创建一个普通的 CSS 规则并将其与画布选择器匹配,但这仍然对我不起作用。假设我每次都需要更改边框的颜色、粗细和类型。我需要动态创建 CSS 并将其附加到画布上。

谢谢你尽你所能的帮助!

标签: typescripthtml5-canvaskonvajs

解决方案


您可以使用stage.getContent()来获取 konva 阶段的最外层 DIV。


推荐阅读