Mongoose 正确承诺拒绝处理
Mongoose right promise rejection handling
我在 nodeJS 中与 promise 模式作斗争
我正在数据库中寻找用户,然后使用用户引用保存新实体,但是当用户不在数据库中时,我应该 return 拒绝,但我不确定如何正确执行.
有什么办法可以做得更好吗?
顺便说一句:对不起,coffeescript :-[
User.findOne({'fbId':userData.me.id}).exec().then((doc)->
if !doc? then return new Promise (resolve,reject)->reject(404)
video = new Video({
user:doc
state: "queue"
createdAt: new Date()
})
video.save().exec()
)
您可以在 then
回调中使用 throw
来拒绝它们。或者,您也可以使用 Promise.reject(404)
.
而不是像那样使用 Promise
构造函数
User.findOne
fbId:userData.me.id
.exec().then (doc)->
if !doc?
throw new Error 404
video = new Video
user: doc
state: "queue"
createdAt: new Date
video.save().exec()
我在 nodeJS 中与 promise 模式作斗争
我正在数据库中寻找用户,然后使用用户引用保存新实体,但是当用户不在数据库中时,我应该 return 拒绝,但我不确定如何正确执行.
有什么办法可以做得更好吗?
顺便说一句:对不起,coffeescript :-[
User.findOne({'fbId':userData.me.id}).exec().then((doc)->
if !doc? then return new Promise (resolve,reject)->reject(404)
video = new Video({
user:doc
state: "queue"
createdAt: new Date()
})
video.save().exec()
)
您可以在 then
回调中使用 throw
来拒绝它们。或者,您也可以使用 Promise.reject(404)
.
Promise
构造函数
User.findOne
fbId:userData.me.id
.exec().then (doc)->
if !doc?
throw new Error 404
video = new Video
user: doc
state: "queue"
createdAt: new Date
video.save().exec()