如何用ExpressJS向JS传递变量?

问题描述 投票:0回答:1

我正在使用express和ejs。

我有这条路线:

app.get('/', async (req, res) => {
  res.render('index', {data: 123})
}

我的目标是通过

data
进入我的
public/index.js

我的index.ejs:

<html>
...
...
  <script>
    var myVar = <%- JSON.stringify(data) %>
  </script>
</html>

错误:我的 IDE 中的语法错误:“需要表达式”

我使用了here提到的解决方案,但它不起作用。

express ejs
1个回答
0
投票

你不需要

JSON.stringify
。您可以按原样使用发送的变量。您的代码中有一个
Syntax error
。 应该是
<%- JSON.stringify(data) %>
->
<%= data %>

表达js

res.render('index', {
    data: 123,
  });

.ejs 文件

  <script>
    var dataVariable= <%= data %>
  </script>

    <h2>Variable</h2>
        <p><%= data%></p>
© www.soinside.com 2019 - 2024. All rights reserved.