【发布时间】:2014-02-19 18:55:15
【问题描述】:
我是 node 新手,也是 JavaScript 回调。
我正在尝试检查 mongo 中是否存在帐户,如果不存在则“保存”,如果存在则返回错误。
我目前正试图在我的快递应用程序之外解决这个问题。这就是我所拥有的..
var MongoClient = require('mongodb').MongoClient;
MongoClient.connect('mongodb://localhost:27017/main', function (err, db) {
if(err) throw err;
var query = { name : "www.website.com"}
findOne(db, query, function (doc) {
if(doc) {
console.log('account exists');
} else {
console.log('good to go');
}
console.dir(doc);
});
});
var findOne = function (db, query, callback) {
db.collection('accounts').findOne(query, function (err, doc) {
if(err) throw err;
db.close();
callback();
});
}
上面的console.dir(doc); 返回为undefined。如何等待 findOne 返回后再使用console.log 的回调或保存帐号?
【问题讨论】:
标签: javascript node.js mongodb asynchronous callback