我正在开发一个使用Mongoose构建REST API的课程。我们有一个问题和答案文档,他们正在展示如何使用Answers Schema上的Instance Method更新问题集合的答案。我现在无法跟进,因为我无法分辨出作为参数传递的回调是什么以及他们正在对模式做些什么。
AnswerSchema.method("update", function(updates, callback) {
object.assign(this, updates, {updatedAt: newDate()});
this.parent().save(callback);
答案 0 :(得分:0)
Mongoose允许您使用回调或Promise,因此您必须为查询选择一个以进行调用。
如果指定了一个回调 - 查询将立即执行,并且在完成后立即调用回调结果。
如果你使用Promises,那么你需要在查询结束时显式调用.then()
来调用它。
否则,如果您不关心结果,可以调用.exec()
,它也会返回一个承诺,但不需要处理。