Como inserir bytes32 [] no remix?

Oct 21 2020

Eu tenho um construtor assim:

constructor(bytes32[] proposalNames) public {
...

Como faço para inserir valores para ele no deplyoment com remix? Eu tentei ["foo", "bar"]mas dizia:

criação da cédula com erro: Erro de codificação de argumentos: Erro: valor de bytes32 inválido (arg = "", coderType = "bytes32", valor = "foo", versão = 4.0.47)

Respostas

2 goodvibration Oct 20 2020 at 23:24

Esta:

const Web3 = require("web3");

console.log(Web3.utils.asciiToHex("foo"));
console.log(Web3.utils.asciiToHex("bar"));

Dá:

0x666f6f
0x626172

Portanto, acredito que uma das opções a seguir deve funcionar para você:

[0x666f6f, 0x626172]
["0x666f6f", "0x626172"]
[0x666f6f0000000000000000000000000000000000000000000000000000000000, 0x6261720000000000000000000000000000000000000000000000000000000000]
["0x666f6f0000000000000000000000000000000000000000000000000000000000", "0x6261720000000000000000000000000000000000000000000000000000000000"]