如何将对象传递给客户端Javascript - NodeJS&表达

时间:2015-12-08 06:05:37

标签: javascript node.js express client handlebars.js

我遇到了一些问题,每当我渲染视图时,我都试图在我的Javascript客户端发送一个对象。我这样发送它(我使用Handlebars)

  > locations=[ {
    >               local:"my_local",                    
    >                desc:"myDesc"                  
    >               }]; 

res.render('myView', { locaciones:locaciones });

//然后在我的视图中在脚本标记内部我尝试获取该var并将其打印

<script>
  var myObj='{{locations}}';
   console.log(locations);
</script>

结果如下:

[object]

我无法使用它的任何属性,因为它未定义

2 个答案:

答案 0 :(得分:3)

您可以将对象作为字符串发送。

locations = JSON.stringify({local:"my_local",desc:"myDesc"});

在客户端,您可以解析它以获取对象

loc = JSON.parse(locations);

现在你可以使用loc作为对象。

答案 1 :(得分:0)

我知道这是一个旧帖子,但是如果其他人正在寻找一种简单的方法来将一个对象从服务器传递到nodejs中的客户端,这就是我的工作方式。

在服务器上我做了类似的事情:

res.render('my_page',{'my_object': my_object});

然后在我的玉石的客户端我做:

-var name = my_object.name;

(假设在my_object中有&#34;名称&#34;属性)

然后只需使用它就可以了。

像:

p Hello #{name}