获取全局 Var Hardhat 控制台

Get Global Var Hardhat Console

您好,我正在尝试在 hardhat 控制台中测试我的合约。我能够 运行 我的功能很好,但是当我尝试读取 public 全局变量时它会抛出错误。

例如:

    uint256 public testVar;

   function setInt(uint256 _intset) external {
        testVar = _intset;
    }

然后在控制台成功 运行nign 等待 factory.setInt(123) 我 运行:

等待factory.testVar()

但由于某种原因我收到错误消息:

Error: call revert exception [ See: https://links.ethers.org/v5-errors-CALL_EXCEPTION ] (method="testVar()", data="0x", errorArgs=null, errorName=null, errorSignature=null, reason=null, code=CALL_EXCEPTION, version=abi/5.6.3)
    at step  {
  reason: null,
  code: 'CALL_EXCEPTION',
  method: 'testVar()',
  data: '0x',
  errorArgs: null,
  errorName: null,
  errorSignature: null,
  address: '0x5FbDB2315678afecb367f032d93F642f64180aa3',
  args: [],
  transaction: {
    data: '0x9c328fb3',
    to: '0x5FbDB2315678afecb367f032d93F642f64180aa3',
    from: '0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266',
    gasLimit: BigNumber { value: "29021272" }
  }
}

知道为什么我不能简单地得到这个 public 变量吗?

值得注意的是,如果我尝试 运行

await factory.testVar 没有它只是说的参数

[函数(匿名)]

谢谢

致未来正在阅读本文的任何人。我的问题是,在我的 hardhat 配置文件中,我从未配置过我的帐户:

所以一旦我设置:

accounts: [process.env.private_key]

它工作正常。

WAGMI