IDE 混音"Error encoding arguments: Error: expected array value"



我在IDE Remix中有以下Solidity合同:

实用主义稳固性0.8.0;

//A contract with a customizable fee
contract EtherSplitter {
function splitEther(address payable[] memory recipients, uint fee) public payable {

recipients[0].transfer(msg.value * fee / 100);
recipients[1].transfer(msg.value * (100 - fee) / 100);
}
receive() external payable {
}
}

使用以下设置运行:

  • 收件人:[0x14723A09ACff6D2A60DcdF7aA4AFf308FDDC160C,0x4B0897b0513fdC7C541B6d9D7E929C4e5364D2dB]
  • 费用:10
  • 值:10以太币

当我按下";Transact-";,我得到以下错误:

transact to EtherSplitter.splitEther errored: Error encoding arguments: Error: expected array value (argument=null, value="[0x14723A09ACff6D2A60DcdF7aA4AFf308FDDC160C, 0x4B0897b0513fdC7C541B6d9D7E929C4e5364D2dB]", code=INVALID_ARGUMENT, version=abi/5.5.0)

我试图如何指定费用似乎有问题。错误是什么?

Remix IDE接受地址类型作为字符串,因此需要将元素用引号括起来:

["0x14723A09ACff6D2A60DcdF7aA4AFf308FDDC160C", "0x4B0897b0513fdC7C541B6d9D7E929C4e5364D2dB"]

最新更新