【发布时间】:2019-01-16 23:52:54
【问题描述】:
假设我们的数据库 (mongoDB) 中有一个名为 User 的模型,其中有一个属性 email。
现在我们要创建一个createUser 函数来检查电子邮件是否有效,以及我们的数据库中是否已经没有使用该电子邮件的用户。
我们可以这样写: (使用猫鼬)
1.
使createUser函数与async异步,然后等待数据库的结果
const result = await User.find({email: email})
在此之后,我们可以进行正常的同步验证,例如
const isValid = email === "test@test.com'
然后执行User.create(...)
但是在执行任何代码之前它必须等待结果,对吗? (对于后端来说不是一个好主意)
2.
让它成为一个承诺或回调链,但代码可读性会很差。
如果我们想创建一个不错的非阻塞后端,在这种情况下有什么好的选择?
【问题讨论】:
标签: node.js mongodb asynchronous mongoose