var promise =new Promise(function (resolve,reject) {
return Promise.resolve(mongo.merchant.findOne({id: merchantId}));
});
promise.then((merchant)=> {
return Promise.resolve(mongo.display.find({id: {'$in': merchant.displays}}));
}).then((displays)=> {
return Promise.resolve(displays);
}).catch((err)=>{
return Promise.reject(err);
});
}
这样返回值到
displayService.getByMerchantId(req.query.merchantId).then((displays)=>
这里就报错。
大牛们求助,感觉是我有地方完全理解错误了,但是找不到地方了。
在
new Promise()
里不应该return Promise.resolve()
吧,应该直接return resolve()
才对不过这不是问题的关键,关键要看你
displayService.getByMerchantId()
返回的是个啥。得返回一个Promise
对象才能then
啊。如果你上面给的是
getByMerchantId()
的内容,大概应该这样改改不过函数里面最后的
then
和catch
都是多余的,可以简化