我正在尝试从 Ethereum web3 函数获取帐户信息,但它返回 Promises,我不知道如何使用 Async/Await 语法调用其中的值!
这是代码:
var Web3 = require('web3');
var web3 = new Web3('http://localhost:8545');;
var accounts = async function fetchAccounts() {
let accs = await web3.eth.getAccounts();
return accs;
};
async function balance () {
let bal = await web3.eth.getBalance('0x398E42Da3254a22e13AbDBB4C68998BCDb3e2F1D');
return bal;
};
balance();
结果:
Promise { <pending> }
然后我尝试了:
web3.eth.accounts[0];
accounts();
结果:
Promise { <pending> }
已编辑
然后我尝试实施其他人标记为异步问题重复答案的解决方案,但即使应用结果,我仍然得到 Promise:
(async() => {
try {
let bal = await balance();
console.log(bal);
}
catch (e) {
//whatever
}
}
)();
回报:
Promise { <pending> }