0

似乎只需要 VS 和 GTK 来构建 konva 所需的节点画布。

请原谅我,因为我是一个完整的新手,但是有没有其他方法可以做到这一点,而不必下载和安装一堆我永远不会用于其他任何东西的巨大的东西?整个过程对我来说似乎很愚蠢,因为现在大多数浏览器都原生支持 HTML5 画布。

4

2 回答 2

1

您可以Konva在 NodeJS 环境中使用。对于这种情况node-canvas是必需的。所以你必须为 in 安装所有依赖项。

可能你不需要 NodeJS。您可以使用浏览器环境。对于这种情况node-canvas,不需要。演示

于 2016-07-05T01:31:35.840 回答
0

我找到了答案,很简单,我错过了整整一个星期!

只做一个npm install konva react-konva --save-dev,无需安装node-canvas

在我像这样在组件文件的开头导入 konva 之前

import {Layer, Rect, Stage, Group} from 'react-konva';

但是这是在创建 DOM 之前加载的,所以 webpack 无法解析“canvas”,这导致了

Could not resolve module 'canvas'

例外。

我通过将其移至 componentDidMount 或 render 方法使其工作:

render() {
    const {Layer, Rect, Stage, Group} = require('react-konva');
    return (
      <div ref="containerDOM">
        <Stage width={700} height={700}>
          <Layer>
            <Rect
              width="50"
              height="50"
              fill="green"
            />
          </Layer>
        </Stage>
      </div>
   );
}
于 2016-07-08T21:18:01.873 回答