Ether

如何使用 Ethers.js 獲取 ETH 合約餘額

  • March 4, 2022

我正在嘗試獲取合約的 ETH 餘額:

const balance = await contract.getBalance();

但它失敗了:

TypeError: contract.getBalance is not a function

我做錯了什麼以及如何解決錯誤?

getBalance是 Ether.js 區塊鏈提供者對象的一個函式,它的使用方式如下:

const balance = await provider.getBalance("address");

請注意,您可以使用contract.address來獲取合約實例的地址。

在測試與 Hard Hat 的契約時:

const { ethers, waffle} = require("hardhat");

const provider = waffle.provider;
const balanceInWei = await provider.getBalance(contract.address);

其中 contract 是已部署的合約實例。

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