Uncaught Error: возвращенные значения недействительны, закончились ли они? - PullRequest
0 голосов
/ 23 октября 2018

Я слушаю события моего развернутого контракта.Всякий раз, когда транзакция завершается и событие инициируется, получение ответа вызывает следующую ошибку:

Uncaught Error: возвращенные значения недействительны, закончились ли они из газа?в ABICoder.push.js.ABICoder.decodeLog (index.js: 277)

Версия Web3: 1.0.0-beta36

Версия метамаски: 4.16.0

Как исправитьэто?

Ответы [ 4 ]

0 голосов
/ 13 февраля 2019

Пожалуйста, проверьте ваш логин в Metamask. Эта проблема обычно возникает, когда вы выходите из Metamask или в худшем случае у вас осталось 0 эфира в вашей учетной записи.

0 голосов
/ 28 января 2019

Попробуйте команду truffle migrate --reset, чтобы все предыдущие значения были сброшены до их первоначального значения

0 голосов
/ 29 января 2019

Выдает ту же ошибку, когда внутри транзакции генерируются разные события с одинаковым именем и одинаковыми аргументами.В моем случае это было событие Transfer из ERC721 и ERC20 .Переименование одного из них решает эту проблему, но, конечно, это не правильный путь.

0 голосов
/ 23 октября 2018

Это ошибка в web3js, обсуждаемая здесь .

И следующее исправление исправляет ее ( source ):

patch-package
--- a/node_modules/web3-eth-abi/src/index.js
+++ b/node_modules/web3-eth-abi/src/index.js
@@ -280,7 +280,7 @@ ABICoder.prototype.decodeLog = function (inputs, data, topics) {


     var nonIndexedData = data;
-    var notIndexedParams = (nonIndexedData) ? this.decodeParameters(notIndexedInputs, nonIndexedData) : [];
+    var notIndexedParams = (nonIndexedData && nonIndexedData !== '0x') ? this.decodeParameters(notIndexedInputs, nonIndexedData) : [];

     var returnValue = new Result();
     returnValue.__length__ = 0;

Изменить: Также снижение до web3-1.0.0.beta33 также исправляет эту проблему тоже.

...