【发布时间】:2021-03-09 16:46:58
【问题描述】:
我希望这个函数 tagFindOrCreate 仅在第一个函数完成时执行:
func.tweetCreate(bmTweet, user)
.then(function () {
func.tagFindOrCreate(bmTweet, bmtTag, user)
})
帮我为这个函数创建一个承诺:
tweetCreate: function (tweet, user) {
Tweet.create(tweet, function (err, tweet) {
user[0].tweets.push(tweet)
user[0].save()
console.log("Tweet saved.")
return Promise.resolve()
})
}
【问题讨论】:
-
什么是
Tweet?这是来自第三方库吗? -
不,这是我创建的猫鼬模型。
-
如果你写了 Tweet.create 为什么不让它返回一个 Promise 而不是支持回调,而不是把它包装成一个呢?
-
@Jamiec 如果我这样做,函数会变得非常大。另外,我想重用 Tweet.create 而不是每次都创建标签。
-
@AnshAgarwal 零意义。要么支持回调,要么支持Pomises,两者都不需要
标签: javascript node.js promise frontend backend