无论我尝试什么,都不会调用MongoClient.connect()的回调。尝试了几种替代方案但似乎没有任何东西可以调用回调函数。我正在使用node.js mongodb驱动程序2.1.6和Express路由。以下是目录结构:
/
node_modules/
exampleServers/
routes/
mongo.js
notes.js
下面是mongo.js的代码,它试图从notes.js调用以获取数据库连接
var MongoClient = require('mongodb').MongoClient
var state = {
db: null,
}
exports.connect = function(url, done) {
if (state.db) return done()
console.log("***REACHES UPTO HERE");
MongoClient.connect(url, function(err, db) {
console.log("***NEVER REACHES HERE");
if (err) return done(err)
state.db = db
done()
})
}
exports.get = function() {
console.log("state.db" + state.db);
return state.db
}
exports.close = function(done) {
if (state.db) {
state.db.close(function(err, result) {
state.db = null
state.mode = null
done(err)
})
}
}