我正在Binance Smart Chain中开发一个DAPP,我想知道我如何计算像USDT这样的代币交易的气体限额,就像它的Chrome扩展一样,它会建议交易气体限额并计算其transactionFee。我有一个计算BNB交易中气体限额的公式,但这对代币交易不起作用。
用于计算BNB事务处理的公式:
const gasPrice = await web3.eth.getGasPrice(); // estimate the gas price
const transactionObject = {
from: SENDER_WALLET_ADDRESS,
to: RECIEVER_WALLET_ADDRESS,
gasPrice
}
const gasLimit = await web3.eth.estimateGas(transactionObject); // estimate the gas limit for this transaction
const transactionFee = gasPrice * gasLimit; // calculate the transaction fee
如果我也能像上面那样计算交易费就太好了。
2条答案
按热度按时间hkmswyz61#
在执行令牌事务时,可以使用web3.eth.Contract示例化JS中的合约助手对象。
然后,您可以使用
.methods
属性,该属性包含基于协定ABI的帮助器函数和公共函数。然后,您可以将
.estimateGas()
函数链接到契约函数。文件:https://web3js.readthedocs.io/en/v1.3.4/web3-eth-contract.html#methods-mymethod-estimategas
vsdwdz232#
使用Ethers.js库