智能合约编译及部署无问题,为何web3js调用方法,提示is not a function

标准erc20合约。

想从前端调用一个地址的币的余额,web3JS 如下做了合约实例化和方法调用:

var tokenInstance = new web3js.eth.Contract(tokenABI,"0x6721A1802768D82Df3C113275A4286d6FfCa940E");

    tokenInstance.methods.balanceOf("0xCC52C6dF34126e9A00D05766312d1d785241da53").call(function(error,result){
      if(!error){
        document.getElementById("tokenBalance").innerText = result;
      }
    });

但前端conlose之后,竟然提示: Uncaught TypeError: tokenInstance.methods.balanceOf is not a function

合约中还有别的call方法,都可以正常调用,唯独这个出现这种问题,百思不得其解。

请先 登录 后评论

最佳答案 2021-05-09 21:21

如果其他的方法可以调用, 那应该是 ABI 错了, 没包含这个方法。

请先 登录 后评论

其它 0 个回答

  • 1 关注
  • 0 收藏,3134 浏览
  • jimmy 提出于 2021-05-09 21:01