我正在构建一个node.js应用程序,我想从服务器访问数组,我发现我无法访问脚本标签上的数组。
我搜索了解决方案并找到了JSON.stringify
的解决方案,但它不起作用并返回错误。
服务器端使用express:
module.exports.index = async (req, res) => {
const coffepoints = await CoffePoint.find({});
res.render('coffepoints/index', { coffepoints })
}
客户端:
<script>
const coffepoints = <% - JSON.stringify(campgrounds) %>
</script>
我应该怎么做才能访问脚本标签中的数组?
您在这里所做的实际上被称为includes
,这是EJS中的部分。
<script> const coffepoints = <% - JSON.stringify(campgrounds) %></script>
^^^
您希望显示或输出一个EJS变量。因此,您将使用<%=
标签。
<script> const coffepoints = <%= JSON.stringify(campgrounds) %></script>
您可以在这里查看EJS文档,其中包括EJS中所有可用的标记。
您可以简单地从express
使用<%= varName %>
访问它<script>
var myVal = <%= someVal %>
</script>