javascript – 如何在SailsJS / Waterline中使用Model.query()作为承诺?

前端之家收集整理的这篇文章主要介绍了javascript – 如何在SailsJS / Waterline中使用Model.query()作为承诺?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有Sails.JS 0.9.8的问题.
我想使用承诺与Model.query()函数(我使用sails- mysql适配器).

代码将工作:

User.findOne({ email: email })
.then(function(user) {
  console.log(user);
});

但这不会

User.query("SELECT email FROM user WHERE email = ?",[ email ]))
.then(function(err,rows) {
  console.log(rows);
})

我对’err’和’rows’都没有定义.

是不是没有实现或我做错了什么?
如果没有实现,有没有替代使用.query()的承诺?

先谢谢你

解决方法

您可以自己承诺(User.query),就像您对任何其他基于回调的API一样,如:
var Promise = require('bluebird');

….

var userQueryAsync = Promise.promisify(User.query);
userQueryAsync("SELECT email FROM user WHERE email = ?",[ email ])
.then(function(user) {
    console.log(user);
});
原文链接:https://www.f2er.com/js/154757.html

猜你在找的JavaScript相关文章