将数据从Node/Express传递到前端Javascript
我不确定这到底是如何工作的,我无法从搜索中找到答案。我正在使用一个节点和express服务器,并且一直在将数据毫无问题地传递到我的前端ejs。现在,我正在尝试在前端实现charts.js,这要求数据位于前端javascript文件中。我知道要将数据传递到我的ejs文件,我会使用以下方法:将数据从Node/Express传递到前端Javascript,javascript,node.js,express,chart.js,ejs,Javascript,Node.js,Express,Chart.js,Ejs,我不确定这到底是如何工作的,我无法从搜索中找到答案。我正在使用一个节点和express服务器,并且一直在将数据毫无问题地传递到我的前端ejs。现在,我正在尝试在前端实现charts.js,这要求数据位于前端javascript文件中。我知道要将数据传递到我的ejs文件,我会使用以下方法: res.render("dashboard", {data: data}); 为了在ejs文件中显示数据,我使用 <%= data %> 然后呈现ejs文件,并将数据传递到ejs文件中使用的前
res.render("dashboard", {data: data});
为了在ejs文件中显示数据,我使用
<%= data %>
然后呈现ejs文件,并将数据传递到ejs文件中使用的前端javascript文件:
let data = <%= (data array passed from the node server here) %>
let数据=
当然,这不是编写代码的正确方法,但这是我试图实现的基本逻辑
我相信这很简单,但我似乎无法在我的上下文中找到答案。有什么资源可以让我学会做我想做的事情吗?谢谢。您不能用HTML文档和单独的JavaScript文件来响应单个请求 因此,您需要:
- 将数据存储在某个地方,并在一个单独的端点中提供一些生成的JavaScript,并且有一个机制来确定在发出请求时提供哪些数据。(注意:这太复杂了,不要这样做。)
- 在
元素内的HTML文档中生成JavaScript内联。(您需要将数据正确地转义为JS,以确保不受XSS的约束) - 将数据输出到HTML文档中(例如,使用
属性或data-*
元素),并使用静态JavaScript读取数据 - 同样,使用一个单独的端点:提供包含数据的JSON,并使用Ajax从静态JS文件读取数据。(同样,您需要一种方法来确定为该特定请求发送哪些数据)
let data = <%= (data array passed from the node server here) %>