如何从Node.js / Socket.io后端发送find()对象到Angular2?

时间:2017-01-26 00:37:13

标签: json node.js mongodb angular socket.io

好的,我想使用find()方法从我的mongodb渲染数据。

socket.on('findUserMessages', (userName) => {
userName = userName
io.sockets.connected[socket.id].emit('private message', 
{ type: 'ss', text:userName, user: 'bot' });

db.chat.find({ user: userName }, function (err, docs) {
userName = userName
if (err) throw err;
console.log('load old messages', docs)
})})

在节点控制台中我重新

load old messages
[ { _id: 5888bdd6cef7952e38821f35,
text: 'O rajciu rajciu',
user: 'Adam',
time: 2017-01-25T15:01:42.733Z },
{ _id: 588909469afffb195c0d7a92,
text: 'dasdf',
user: 'Adam',
time: 2017-01-25T20:23:33.069Z } ]

我的Angular2服务看起来像这样

userLoad(userName:string){
    this.socket.emit('findUserMessages', userName)
}

来自组件的功能

UserLogin() {
    console.log("ASD");
    this._chatIOService.userLoad(this.user)
}

在浏览器上我得到了

ASD
chatIO.component.ts:49 Object {type: "ss", text: "Adam", user: "bot"}

我试图在

中输入'docs'
io.sockets.connected[socket.id].emit

但没有任何成功。

我会对任何反馈感到高兴。

0 个答案:

没有答案