Вывод значения uint256 на консоль при отладке с помощью Truffle

Я пытаюсь понять, как выводить значения на консоль при выполнении truffle debug <txhash>. До сих пор я пытался использовать событие под названием «TestValue», но я не вижу вывода в окне консоли. Кто-нибудь знает, как я могу распечатать числовое значение на консоли? Я также просмотрел logx, например, log0(uint256Value)но увидел, что он ищет байты вместо uint256.

Это событие TestValue, которое я пробовал, не печатает вывод, который я ищу:

введите описание изображения здесь

Какой метод, по моему мнению, приводит к сбою моего контракта:

введите описание изображения здесь

Заранее очень признателен, если кто-нибудь может помочь мне увидеть значения, сравниваемые в этом состоянии!

Ответы (2)

Теперь вы можете легко увидеть состояние локальных переменных, нажав vво время отладки. Кроме того, вы можете увидеть конкретное выражение, используя watchфункцию.

Для получения дополнительной информации, пожалуйста, прочитайте следующий очень хороший учебник по Truffle: Инспекция переменных: углубление с помощью отладчика твердости трюфеля.

Если вы хотите увидеть значение функции, возвращающей uint256, попробуйте

(await [the function that return uint256]()).toString()

Uint256 — это своего рода число, но оно готово только для отображения в виде строки. В блокчейне каждый метод является асинхронным, не забудьте добавить awaitперед каждым методом, чтобы вы могли конвейеризировать результат.