2016-07-04 71 views
0

似乎VS和GTK只需要构建konva所需的node-canvas。如何在没有Visual Studio和GTK的Windows上使用konva

原谅我,因为我是一个完整的新手,但有没有这样做,而不必下载并安装了一堆,我永远不会为别的用巨大的东西任何其他方式?整个过程对我来说似乎很愚蠢,因为现在大多数浏览器本地支持HTML5画布。

+0

你可以看到说明这里https://github.com/Automattic/node-canvas/打造节点帆布wiki /安装--- Windows – hoangbv15

回答

0

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

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

之前,我进口konva在我的组件文件这样

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

开始,但在创建DOM在此之前加载,这样的WebPack无法解析“画布”,这就造成了

Could not resolve module 'canvas' 

例外。

我把它通过移动下来要么componentDidMount工作或渲染方法:

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> 
    ); 
} 
+0

。这肯定在旧版本的webpack 1上。 –

+0

@AhmedHashem抱歉,我不记得,因为这是在一年前就使用的WebPack!反正,我找到了答案,非常感谢你的帮助lavrton! – hoangbv15

1

您可以在NodeJS环境中使用Konva。对于这种情况,需要node-canvas。所以你必须安装所有依赖关系。

也许你不需要NodeJS。您可以使用浏览器环境。对于这种情况,node-canvas不是必需的。 DEMO

+0

非常感谢@lavrton。我正在使用这个样板文件[link](https://www.reactstarterkit.com/)启动一个React Redux web应用程序。它只使用npm和webpack来安装和打包模块(出于某种原因,很多反应样板都喜欢这种方式)。在那种情况下,我做这件事的最好方法是什么?我应该找到另一种使用凉亭的样板吗? – hoangbv15

+0

@ hoangbv15没关系。你将在这里使用node(和npm)来创建和安装软件包。您的代码将在浏览器中运行。 – lavrton

+0

是的,但问题是,konva.js然后在'require('canvas')'这一行爆发错误消息'Can not find module'canvas'“。我真的觉得最好是构建自己的webGL组件。 ... – hoangbv15

相关问题