如何将一组对象发送到AngularJS?

时间:2015-11-12 23:54:43

标签: javascript arrays angularjs node.js

简要版

我想知道如何将NodeJS中的对象数组发送到AngularJS中的应用程序。

var players = 
[ 
  Footer: { username: 'Footer', hp: 200, exp: 1 },
  Barter: { username: 'Barter', hp: 200, exp: 1 }
];

我试图以多种方式发送它,但我总是在AngularJS端收到一个空数组。

扩展问题

在服务器上,我将新用户分配给数组players。我想找到user object传递username作为数组的索引。我已经使用.push方法成功完成了它,但它没有提供使用索引访问它的方法。所以,我已经开始使用bracket notation在我的阵列上创建对象,然后使用它来访问:

//players.push(user); //This does work, but won't be indexed.
var username = user.username; //This is the new user object.
players[username] = user; //Using bracket notation to create object

之后,我有一条响应此players数组的路由。我已经尝试了res.send()res.json()。数组在发送之前是console.log()并且没问题。但是响应是一个空阵列。

在客户端,我正在记录res.data,它只记录[]

我有点被困在这里。如果需要,我可以在这里添加更多代码。或者,您可以使用完整代码访问此GitHub project

1 个答案:

答案 0 :(得分:1)

如果line是一个数组,则必须使用索引来填充它而不是players个字符串。 username将忽略数组对象上的非整数键。