Frontend

分叉主網並在前端修改其狀態

  • March 29, 2022

我想在前端應用程序中模擬合約互動,但為了做到這一點,我需要模擬一個地址並向該地址鑄造一定數量的 ERC20。這對於像 Foundry 或 Hardhat 這樣的框架來說是相當簡單的。

有什麼方法可以在前端獲得這個功能嗎?謝謝

請查看hardhat 的模擬帳戶。基本上hardhat_impersonateAccount,Hardhat Network 允許您發送模擬特定帳戶和契約地址的交易。

要模擬一個帳戶,請使用此方法,將要模擬的地址作為其參數傳遞:

await hre.network.provider.request({
 method: "hardhat_impersonateAccount",
 params: ["0x364d6D0333432C3Ac016Ca832fb8594A8cE43Ca6"],
});

如果您使用的是 hardhat-ethers (opens new window),請getSigner在模擬帳戶後呼叫:

const signer = await ethers.getSigner("0x364d6D0333432C3Ac016Ca832fb8594A8cE43Ca6")
signer.sendTransaction(...)

呼籲hardhat_stopImpersonatingAccount停止冒充。

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