猿问

如何使用async / await进行阻止呼叫

如何使此呼叫阻塞(例如,使用异步/等待)?


testMethod(message) {

    let signature;

    eccrypto.sign(this.privateKey, msg)

        .then(function (sig) {

            console.log("Signature in DER format:", sig);

            signature = sig;

        });

    return signature;

}

我希望testMethod返回signature,现在返回(当然)undefined!我一直在玩async/await没有成功...


有什么帮助吗?


芜湖不芜
浏览 242回答 2
2回答

RISEBY

当然,您可以进行异步/等待。像这样async testMethod(message) {    let signature;    signature = await eccrypto.sign(this.privateKey, msg)        .then(function (sig) {            console.log("Signature in DER format:", sig);            return sig;        });    return signature;}但这不会被阻止。它的工作原理类似于同步代码,但不尽相同。有关详细信息,请参见。

三国纷争

async testMethod(msg) {    try {      const signature = await eccrypto.sign(this.privateKey, msg)      console.log('Signature in DER format:', signature);      return signature;    } catch (e) {      console.error('Error generating signature', e.message);    }}
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答