クエリに変数を設定するにはどうすればよいですか? node.js で関数とコールバックを使用して非同期を処理しようとしていますが、クエリを変数と等しくする方法がわかりません。このコードで私がやろうとしているのは、ユーザーに属するフレンド コレクションを取得し、フレンドの結果を返すことです (クエリ insertAll で正しく実行しているとは思いません)。クエリ。そして、結果をレンダリングとして返します。これでrenderを呼び出す方法がわかりません...
これが私のコードです:
exports.contactList = function(req, res) {
var insertFriend = function(data, callback) {
var friend = User.findById({_id: user.friendStatus.fuId}, function() {
callback(null, data);
}, friend);
};;
var insertAll = function(coll, callback) {
var queue = coll.slice(0),
friendX;
(function iterate(){
if(queue.length === 0) {
callback();
return;
}
friendX = queue.splice(0,1)[0];
insertFriend(friendX, function(err, friendX) {
if(err) {throw err;}
console.log(friendX + ' inserted');
process.nextTick(iterate);
});
})();
};
insertAll([Friend.findOne({userId: req.signedCookies.userid})], function(){
});
};