我正在开发一个应用程序,并且正在使用MEAN堆栈。我使用MongoDB将值保存在数据库中。我想使用这些值进行API调用,但前提是值是null。现在它已经成功地从数据库中获取了这些值并调用了API,但我不知道如何检查该值是否为null,我已经尝试了所有方法,但是我认为我对NodeJS并不完全了解,是异步的。这是有效的代码,但不检查值是否为null:
var makeApiCalls = function (workerId) {
var Model = mongoose.model('Tweet'.concat(workerId), Tweet.tweetSchema);
return Model.find({},{ _id: 1, message: 1}).then(messages =>
Promise.all(
messages.map(({ _id, message }) =>
api.sentiment(message).then(result =>
Model.findOneAndUpdate({ _id }, { resultOfTheCall: result }, { new: true })
.then( updated => { console.log(updated); return updated })
)
)
)
)
};
猫鼬模型有一个名为resultOfTheCall的字段,我需要检查该值是否为null,仅在这种情况下,我要使用字段消息对API进行调用。
这是消息之一的console.log:
{
_id: 5b85c83b413a2b1473e7122a,
date: 'Tue Aug 28 22:10:02 +0000 2018',
message: 'la gente quiere y no viene',
resultOfTheCall: 0.5931016939587707,
__v: 0 }
答案 0 :(得分:1)
在进行this.searchTerms = new Subject<string>();
之前,只需过滤邮件。
Promise.all