0
私のようなデータの一覧移入マングースを使用します。なぜモンゴースの人口が私に違法な配列を返すのか、どうやってそれをするのですか?
Account.findOne({_id:accountId}).populate({
path:"orders.order",
match:{_id:orderId},
selecte:'',
options:{
limit:1
}
}).exec(function (err, doc) {
if (err) {
callback(err);
}
callback(doc);
})
}
を、私は何を得る:
[ { order: null },
{ order: null },
{ order: null },
{ order: null },
{ order: null },
{ order: null },
{ order:
{ date: Tue May 31 2016 12:56:36 GMT+0800 (HKT),
dishs: [Object],
__v: 0,
message: 'plz deliver after 5 p.m',
price: 5,
address: [Object],
shop: null,
user: 574bfebc29cf722c17f8eafe,
_id: 574d198451615ce01a5e1a81 } } ]
が、私は、このデータが配列であると思いますが、
console.log(typeof doc.orders);//object
console.log(doc.orders.length);//undefined
console.log(doc.orders[0].order);//error
console.log(Array.isArray(doc.orders));//false
私にはありませんこのデータのヌル値を削除する方法と、このデータを配列に変更する方法を知っていますか?
ところで、私はそれが条件に一致しない場合、mongoose populate.matchはnull値を返すと主張の投稿を見つける、それは本当ですか?