此代码适用于0.20.6版本,但对于新版本不再适用。我一直在阅读文档并测试示例,但是还没有开始工作。 这是下面工作的代码。
let contract = web3.eth.contract(ABI).at(tokenAddress);
contract.balanceOf(walletAddress, (error, balance) => {
contract.decimals((error, decimals) => {
balance = balance.div(10 ** decimals);
console.log(balance.toString());
});
});
请让我知道一些解决方法。谢谢!
答案 0 :(得分:0)
在web3@1.0
中,您必须使用myContract.methods.myMethod()
,并且可以使用.then
进行响应。也可以使用回调。
对于合同实例new web3.eth.Contract(jsonInterface, address, options)
或以后可以将地址添加到实例myContract.address = '0x1234FFDD...';
let contract = web3.eth.contract(ABI, tokenAddress);
contract.methods.balanceOf(walletAddress).call((error, balance) => {
contract.methods.decimals().call((error, decimals) => {
balance = balance.div(10 ** decimals);
console.log(balance.toString());
});
});