How to get balanceOf of tron smart contract

3.1k views Asked by At

I am using tronlink chrome extension and trying to call balanceOf method of a smart contract. I am very new to smart contract. Unable to find any solution. Please check my code:

let contractDetail = await window.tronWeb.trx.getContract('TG7DLMkJPYeG4QTZ8Qfgk9Mu7ePM5SQpbN');
            let contract = await window.tronWeb.contract(contractDetail.abi.entrys, 'TG7DLMkJPYeG4QTZ8Qfgk9Mu7ePM5SQpbN');
            balance = contract.balanceOf.call('TNkJRejobNuZhV2LiwfGQ7wPNiLtcbDueS');
            console.log(balance)


//Error: Uncaught TypeError: Cannot read property 'call' of undefined
2

There are 2 answers

1
George Michael On BEST ANSWER

Use tronWeb.trx.getBalance(CONTRACT_ADDRESS);

Your code should look like

balance = await tronWeb.trx.getBalance('TNkJRejobNuZhV2LiwfGQ7wPNiLtcbDueS');
0
Ming On

balanceOf requires one argument.

'balanceOf(address)'

Instead of

contract.balanceOf.call('TNkJRejobNuZhV2LiwfGQ7wPNiLtcbDueS');

You should pass in the address into balanceOf

contract.balanceOf('TNkJRejobNuZhV2LiwfGQ7wPNiLtcbDueS').call();