Jak wprowadzić bytes32 [] do remiksu?

Oct 21 2020

Mam takiego konstruktora:

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

Jak mogę wprowadzić dla niego wartości na deplyoment z remiksem? Próbowałem, ["foo", "bar"]ale powiedział:

błąd tworzenia kart do głosowania: Błąd kodowania argumentów: Błąd: nieprawidłowa wartość bajtów32 (arg = "", coderType = "bytes32", wartość = "foo", wersja = 4.0.47)

Odpowiedzi

2 goodvibration Oct 20 2020 at 23:24

To:

const Web3 = require("web3");

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

Daje:

0x666f6f
0x626172

Dlatego uważam, że jeden z poniższych powinien zadziałać dla Ciebie:

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