我们使用mongodb调用来检索在每个页面加载/套接字创建期间调用的套接字事件中的文档,以便我们获得RangeError: Maximum call stack size exceeded
。请检查以下代码。
socket.on('addUser', function (userid){
connectedSocket[userid] = socket;
socket.UserId = userid;
//getLostMessages(userid);
console.log('new user added : '+userid);
lostMesgsdb.findByReceiver(userid, function(err, mesgRecords){
if(mesgRecords)
{
if(mesgRecords.length == 0)
{
console.log('no lost messages found');
}
else
{
// console.log(mesgRecords); //connectedSocket[userid]
connectedSocket[userid].emit('lostMessages', mesgRecords);
lostMesgsdb.delete(userid, function( error, docs) {
console.log('messages are deleted for user : '+userid);
});
}
}
});
});

答案 0 :(得分:0)
RangeError:超出最大调用堆栈大小。堆栈已满时会发生这种情况。我没有在代码中看到任何类型的循环。检查代码是否有无限循环..了解set immediate和process nodets中的nexttick