如何使此呼叫阻塞(例如,使用异步/等待)?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没有成功...有什么帮助吗?
2 回答
RISEBY
TA贡献1856条经验 获得超5个赞
当然,您可以进行异步/等待。像这样
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;
}
但这不会被阻止。它的工作原理类似于同步代码,但不尽相同。有关详细信息,请参见。
三国纷争
TA贡献1804条经验 获得超7个赞
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);
}
}
添加回答
举报
0/150
提交
取消