2017-06-16 6 views
1

集計で何も見つからず、データが[]の場合、それでも私の機能は解決されます。集計の結果が実際に得られているかどうかを確認する方法

集計が実際に何かを検出したかどうかを確認するにはどうすればよいですか? if (!data) {

usersTable.aggregate (
    { 
     $match:{ 
      _id: UserID 
     } 
    } 
,function (err, data) { 
    if (err) { 
     throw new Error('findUser: ' + err); 
    } else { 
     console.log("found: " + JSON.stringify(data, null, 4)); 
     if (!data) { 
      throw new Error('ERR: Unknown userID in call of newBooking'); 
     } 
     resolve("OK"); 
    }; 
}); 
+0

あなたはmongodbを使用していますか?その場合、どのバージョンですか? – trincot

+0

最新バージョン3.4 – torbenrudgaard

答えて

0

が動作していない私の

はモンゴは空のオブジェクト、その、まだオブジェクトを返す場合もあるためif (!data) {が動作することはありません、このようにそれを解決しました。

は、代わりに私はだから今、私は if (isEmpty(data)) {を使用することができます。この機能

function isEmpty(obj) { 
    return Object.keys(obj).length === 0; 
} 

を発見し、それが完璧に動作します。

関連する問題