【发布时间】:2021-04-10 21:48:28
【问题描述】:
我正在调整 library that uses callback 以使用 Promises。当我使用then() 时它可以工作,但是当我使用await 时它不起作用。
> dbc.solve
[AsyncFunction]
> await dbc.solve(img)
await dbc.solve(img)
^^^^^
SyntaxError: await is only valid in async function
dbc.solve 的代码是:
module.exports = DeathByCaptcha = (function() {
function DeathByCaptcha(username, password, endpoint) {
...
}
DeathByCaptcha.prototype.solve = async function(img) {
return new Promise(
function(resolve, reject) {
...
}
);
};
})();
我相信这与solve 是prototype 的成员这一事实有关,但我找不到任何有关它的信息。我发现那个节点没有always supported async await for class methods,所以我从节点7升级,现在我使用的是节点9.4.0。
【问题讨论】:
标签: javascript promise async-await