Gas

如何獲取字元串中的收據gasUsed?

  • March 11, 2022

我正在使用 ethers.js,我記得之前使用console.log(Gas used: ${receipt.gasUsed.toString()})過,我可以得到gasUsedin 字元串。但現在它返回錯誤TypeError: Cannot read properties of undefined (reading 'toString')

還有其他選擇可以將它放在字元串中嗎?

     const sendToken = await signer.sendTransaction(tx);

     await sendToken.wait();
     console.log(`Transaction successful with hash: ${sendToken.hash}`);

     const receipt = await provider.getTransaction(sendToken.hash);

     console.log(`Transaction confirmed in block ${receipt.blockNumber}`);
     console.log(`Gas used: ${receipt.gasUsed.toString()}`);

參考https://docs.ethers.io/v5/api/providers/provider/

查看 ethers 的文件,我們可以看到 getTransaction 不包含欄位 gasUsed。 在此處輸入圖像描述

但是,在文件中搜尋 gasUsed,我們會發現它確實如您所想的那樣存在,但不在 getTransaction 下。

在此處輸入圖像描述

您應該能夠通過將其替換為 getTransactionReceipt 來訪問 gasUsed。

希望它有所幫助!

引用自:https://ethereum.stackexchange.com/questions/123581