【发布时间】:2018-01-27 02:00:03
【问题描述】:
我正在努力解决这个问题......但无论我把 return 放在哪里,我都会收到这个警告......
警告:在 home/app/server/node_modules/express/lib/router/index.js:280:7 的处理程序中创建了一个承诺,但没有从它返回 服务器 |在 ._doFetch (/home/app/server/node_modules/bluebird/js/release/method.js:13:13)
module.exports = {
getUser: (req, res) => {
var found_user = User.query({where: {email: req.body.email}, orWhere: {username: req.body.email}}).fetch()
found_user.then(user => {
if (user) {
res.status(200).json(user)
} else {
res.status(422).json(new error.ERROR_422("No user found under username/email"));
}
})
.catch(err => {
console.log(err)
res.status(500).json(new error.ERROR_500(err));
})
}
我正在使用 Bookshelf.js,我应该在这里返回什么?
【问题讨论】:
-
尝试使用
return found_user.then... -
是什么给你的错误?我向你保证,你在这里所做的一切都没有错。某处可能有一个过分热心的 eslint 文件吗?
-
@GeorgeMauer 这就是我感到沮丧的原因,我的意思是,它们都是警告而不是错误,代码运行良好,只是知道我在哪里得到这个
-
对,那么您是在什么时候看到的?在运行时在您的控制台中?保存文件时在文本编辑器中?在构建过程中?我们的开发环境中有一些东西正在这样做,但不幸的是我们无法猜测。
-
也许使用
Promise.resolve();?
标签: javascript node.js promise bookshelf.js