如何将对象传递给客户端 Javascript - NodeJS & express
How to Pass an Object to client Javascript - NodeJS & express
我遇到了一些问题,我试图在呈现视图时发送一个对象以在我的 Javascript 客户端使用。我是这样发送的(我使用的是 Handlebars)
> locations=[ {
> local:"my_local",
> desc:"myDesc"
> }];
res.render('myView', { locaciones:locaciones });
// 然后在我的视图中,在脚本标记内,我尝试获取该 var 并打印它
<script>
var myObj='{{locations}}';
console.log(locations);
</script>
结果是这样的:
[object]
而且我不能使用它的任何 属性 因为它是未定义的
您可以将对象作为字符串发送。
喜欢locations = JSON.stringify({local:"my_local",desc:"myDesc"});
在客户端你可以解析它来得到一个对象
喜欢loc = JSON.parse(locations);
现在您可以将 loc 用作对象。
我知道这是一个旧的 post 但如果其他人正在寻找一种简单的方法将对象从服务器传递到 nodejs 中的客户端,我就是这样做的。
在服务器上我做了类似的事情:
res.render('my_page',{'my_object': my_object});
然后在我的 jade 客户端,我会这样做:
-var name = my_object.name;
(假设 "name" 属性 在 my_object 中)
然后根据需要使用它。
喜欢:
p Hello #{name}
我遇到了一些问题,我试图在呈现视图时发送一个对象以在我的 Javascript 客户端使用。我是这样发送的(我使用的是 Handlebars)
> locations=[ {
> local:"my_local",
> desc:"myDesc"
> }];
res.render('myView', { locaciones:locaciones });
// 然后在我的视图中,在脚本标记内,我尝试获取该 var 并打印它
<script>
var myObj='{{locations}}';
console.log(locations);
</script>
结果是这样的:
[object]
而且我不能使用它的任何 属性 因为它是未定义的
您可以将对象作为字符串发送。
喜欢locations = JSON.stringify({local:"my_local",desc:"myDesc"});
在客户端你可以解析它来得到一个对象
喜欢loc = JSON.parse(locations);
现在您可以将 loc 用作对象。
我知道这是一个旧的 post 但如果其他人正在寻找一种简单的方法将对象从服务器传递到 nodejs 中的客户端,我就是这样做的。
在服务器上我做了类似的事情:
res.render('my_page',{'my_object': my_object});
然后在我的 jade 客户端,我会这样做:
-var name = my_object.name;
(假设 "name" 属性 在 my_object 中)
然后根据需要使用它。
喜欢:
p Hello #{name}