我正在尝试绘制图表(使用ChartJS
)作为快速响应。图表的数据点以数组形式存储在节点中。我必须将其传递给chartJS函数。
为此,我目前正在使用express的res.render()
方法。我设法将值传递到.pug
文件。现在,我必须将数据点从.pug
文件移动到.js
文件/ ChartJS函数。
我该如何完成?这是正确的方法吗?
我期望的最终结果是存储在node
中的数组值必须反映在具有ChartJS函数的.js
文件中。
感谢您的任何帮助/建议。
谢谢!
答案 0 :(得分:1)
您需要使用unescaped string interpolation和字符串化将您的pug变量转换为客户端浏览器变量:
var arrayForChart = !{JSON.stringify(arrayInPug)};
如果express / pug中的变量为['a', 'b', 'c']
,则将输出:
var arrayForChart = ['a', 'b', 'c'];
没有字符串化,您将得到类似这样的内容,因为它不是有效的JavaScript,只会在浏览器中引发错误:
var arrayForChart = [Object object];