0
我正在与承诺,或至少尝试。JavaScript的MySQL和承诺
这里是我的代码看起来是迄今:
checkEmailUsername = function(mail, user) {
return new Promise(function(resolve, reject) {
var query;
query = "SELECT * FROM users WHERE email = ? OR username = ?";
return connection.query(query, [mail, user], function(err, row, fields) {
if (err) {
reject(err);
}
console.log(row.length);
if (row.length > 0) {
return resolve(true);
} else {
return resolve(false);
}
});
}).then()["catch"]();
};
问题。如何从promise中返回解析值?
为什么我不能console.log checkEmailUsername返回?现在我从内部返回值.then()函数 – GreetingsFriend
您不能从异步代码返回事物,当您尝试记录日志时结果尚未准备好,并且程序继续到下一行。当承诺已经解决时,您可以在'当时'内登录。 –