我正在与Sequelize合作,但我很难让我的请求回归。
这是我到目前为止所得到的:
var m = Messagem.findAll({}).then((mensagens)=>{
console.log(mensagens); // i have a reponse :D
return mensagens;
});
console.log(m);
Promise {
_bitField: 2097152,
_fulfillmentHandler0: undefined,
_rejectionHandler0: undefined,
_promise0: undefined,
_receiver0: undefined,
_boundTo: Messagem }
我做错了什么?
感谢任何帮助!
答案 0 :(得分:1)
您无法从promise解析处理程序返回值
(好吧,你可以,但这将是.then()
方法本身返回的承诺的解决或拒绝的结果,就像在这个例子中一样。)
在您的情况下,m
是一个承诺,因此您需要使用它。而不是:
console.log(m);
你必须这样做:
m.then(console.log);
或者这个:
console.log(await m);
如果您在使用async
关键字声明的函数内部。
有关详细信息,请参阅this answer。另请参阅other answers about promises。