在node-js / Express中在画布上绘制图形

时间:2017-05-18 04:22:33

标签: node.js express pug

我想在canvas元素上绘制一个图表。我的Jade文件包含以下内容:

div
   canvas

在node.js web应用程序的index.js文件中,我尝试了以下操作:

var canvas = document.getElementById('canvas');
var context = canvas.getContext('2d');
context.beginPath();
context.strokeStyle = "rgba(255, 0, 0, 1)";
height = canvas.height;
width = canvas.width;
context.moveTo(0, 0);
context.lineTo(width, height);
context.lineWidth = 1;
context.stroke();

然而,它无法识别"文件"。我的问题是如何获得对#34; canvas"的引用。在我的.js文件中?请注意,为简洁起见,实际图表将比上面显示的简单线条图代码更复杂。图表的数据在服务器端的index.js文件中生成。因此,图表将在服务器上创建。

1 个答案:

答案 0 :(得分:2)

NodeJS无法获取用户浏览器的引用以在显示的页面上绘制。虽然它是Javascript,但NodeJS在服务器端执行。必须在HTML页面中编写相同的代码。

如果你的绘图需要来自后端NodeJS逻辑的一些数据,那么页面Javascript必须调用你的NodeJS服务来获取相关数据。