如何通过安全帽与接口交互。
例如,在brownie中,您可以从如下接口调用函数:
def main():
weth = interface.IWeth("weth_address")
tx = weth.deposit({"from": account, "value": "value"})
就是这样。
有没有办法在安全帽上也这样做?我已经在这个问题上坐了几个小时了,我一辈子都不知道该怎么做。
如果不可能的话,我该如何通过固体润湿。
是的,您可以使用ethers.getContractAt
。
import { ethers } from "hardhat";
...
// Assume `ISetup` is an interface of the contract.
const setup = await ethers.getContractAt("ISetup", contractAddress);
在hardhat中,您可以使用附件来实现它。
- 转到安全帽控制台:
npx hardhat console
- 获取合同工厂:
factory = await ethers.getContractFactory('YourContractName')
- 附加到地址
weth = await factory.attach('weth_address')
- 执行函数调用,例如:
signer = await ethers.getSigner();
await signer.sendTransaction({ to: tokenAddress, value: ethers.utils.parseEther("5.0") });