无法访问异步函数外的变量[重复]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无法访问异步函数外的变量[重复]相关的知识,希望对你有一定的参考价值。
这个问题在这里已有答案:
如何在函数外部访问结果变量。
con.query(
"SELECT * FROM table WHERE particulars = 'data'",
(error, results) => {
if (error) {
return console.error(error.message);
}
console.log(results);
}
);
Console.log在函数内工作正常,但是当我返回结果变量以在函数外部使用它时,我得到一个未定义的变量。我知道我应该使用像异步函数这样的东西,但在这种情况下我无法弄清楚如何使用它。
先感谢您。
答案
如果你需要使用async-await
它应该是:
async function getParticulars() {
const results = await con.query("SELECT * FROM table WHERE particulars = 'data'");
//Process results here
}
我知道我的答案非常抽象,但它应该引导你找到答案。为了让您更深入地了解这个async
代码,我需要知道您使用什么库来查询数据库。干杯,sigfried。
另一答案
您可以将结果返回给变量
const results = con.query(
"SELECT * FROM table WHERE particulars = 'data'",
(error, results) => {
if (error) {
return console.error(error.message);
}
return results
}
);
以上是关于无法访问异步函数外的变量[重复]的主要内容,如果未能解决你的问题,请参考以下文章