我想确保我的mongodb在mongoConnect函数中成功连接,然后开始查询它,因为在NodeJS中没有阻塞并且它继续执行语句
我只是想知道是否有一些像" .then(function(){..})"在服务器端或任何其他类似的东西,我知道有回调函数用于此目的但我不知道如何在这里使用它,我的意思是在我的情况下。
我继承我的代码:
io.sockets.on('connection', function (socket) {
mongoConnect();
//Some Query to the Database
socket.on('login',function(user)
{
controller.loginUser(user);
});
});
function mongoConnect()
{
var mongoose = require('mongoose');
mongoose.connect('mongodb://xxxxxx-xxx-xxx.mongolab.com:xxx/xxxx');
}
答案 0 :(得分:2)
你可以使用mongoose.once等待'open'事件,然后执行你的回调。
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');
var db = mongoose.connection;
db.once('open', function callback () {
// Stuff here
});
查看此网站以供参考: http://mongoosejs.com/docs/index.html