我在node.js中工作,我的基本目标是将一个对象从服务器js端传递到客户端js中。我的基本目标是将一个对象从服务器js端传递到客户端js,我试过这样做。
服务器端路由
router.get("/" , function(req,res){
var data = {name : "gohar" ,
age : "21"}
res.render("landing" , {data : data})
});
在 EJS
<h1>
This is landing page <%= data.name %>
</h1>
<script type="text/javascript">
console.log(data)
</script>
如果你想在终端打印,你可以使用以下方法
<script type="text/javascript">
<% console.log(JSON.stringify(data) ) %>
</script>
如果你想在浏览器控制台打印,你可以使用
<script type="text/javascript">
console.log(<%- JSON.stringify(data) %>)
</script>
你在IDE中得到的ejs括号的错误是由于你把mimetype提到了textjavascript的事实。虽然这个解决方案会奏效,但为了消除错误,你应该改变类型,但这样你就无法在浏览器中进行控制台记录。
<script type="text/ejs">
<% console.log(JSON.stringify(data)) %>
</script>