прослушивание событий web3.js
прослушивание событий web3.js

Оригинальный текст здесь[1]

прохождениеweb3.eth.sendTransaction, web3.eth.sendSignedTransaction, contractDeployed.methods['methodName'](...methodParams).sendфункция При отправке транзакции,мы можем использоватьWeb3PromiEventследить за временем:

Язык кода:javascript
копировать
web3.eth.sendTransaction({...})
    .on('sending', (sending) => {
        // Sending example
        // 0x02f86d82053903849502f900849a9a0d16830186a0947ab80aeb6bb488b7f6c41c58e83ef248eb39c8828080c080a0b0fce643a6ca3077ee6b83590b1798d00edef99e2c65c1837daab88d46860887a07ca449a31b2430dbf21310b8c4491386762ade23e48c7cd0b70d315576374c7c
    })
    .on('sent', (sent) => {
        // Sent example
        // 0x02f86d82053903849502f900849a9a0d16830186a0947ab80aeb6bb488b7f6c41c58e83ef248eb39c8828080c080a0b0fce643a6ca3077ee6b83590b1798d00edef99e2c65c1837daab88d46860887a07ca449a31b2430dbf21310b8c4491386762ade23e48c7cd0b70d315576374c7c
    })
    .on('transactionHash', (transactionHash) => {
        // Transaction hash example
        // 0x6d85b2f07e7c8f2a7ce90a5bcfa3100c528f173f0707164434fb42d397d92d50
    })
    .on('confirmation', (confirmation) => {
        // Confirmation example
        // {
        //     confirmations: 1n,
        //         receipt: {
        //          blockHash: '0x947b8c95dea7f0c643f2be0e9d1c3bec76c7f5146fdf34f5f1efe6d2cab5f568',
        //               blockNumber: 22n,
        //               cumulativeGasUsed: 21000n,
        //               effectiveGasPrice: 2553565308n,
        //               from: '0xe2597eb05cf9a87eb1309e86750c903ec38e527e',
        //               gasUsed: 21000n,
        //               logs: [],
        //               logsBloom: '0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000',
        //               status: 1n,
        //               to: '0x7ab80aeb6bb488b7f6c41c58e83ef248eb39c882',
        //               transactionHash: '0x3ec198ae10cf289b91210b4fd86a3b22cc9bcef16bca6beee21c35b76a2b7073',
        //               transactionIndex: 0n,
        //               type: 2n
        //          },
        //     latestBlockHash: '0x947b8c95dea7f0c643f2be0e9d1c3bec76c7f5146fdf34f5f1efe6d2cab5f568'
        // }

    })
    .on('receipt', (receipt) => {
        // Receipt example
        // {
        //     blockHash: '0x135d14b724d90b97feec1e96df590ce9af762d424aea49d29e11feaa24fe02f1',
        //     blockNumber: 23n,
        //     cumulativeGasUsed: 21000n,
        //     effectiveGasPrice: 2546893579n,
        //     from: '0xe2597eb05cf9a87eb1309e86750c903ec38e527e',
        //     gasUsed: 21000n,
        //     logs: [],
        //     logsBloom: '0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000',
        //     status: 1n,
        //     to: '0x7ab80aeb6bb488b7f6c41c58e83ef248eb39c882',
        //     transactionHash: '0x9a6497fe4028d716e66a24ab7dfd3d1bcf136ba2ec26f427719b4ddaaff76fb7',
        //     transactionIndex: 0n,
        //     type: 2n
        // }

    })
    .on('error', (error) => {
        // Error example
        // InvalidResponseError: Returned error: exceeds block gas limit
        // at Web3RequestManager._processJsonRpcResponse (.../web3_request_manager.js:193:23)
        // at Web3RequestManager.<anonymous> (.../web3_request_manager.js:112:29)
        // at Generator.next (<anonymous>)
        // at fulfilled (.../web3_request_manager.js:5:58)
        // at processTicksAndRejections (node:internal/process/task_queues:96:5) {
        //             cause: { code: -32000, message: 'exceeds block gas limit' },
        //             code: 101,
        //             data: undefined,
        //             request: {
        //             jsonrpc: '2.0',
        //             id: 'ea1f8fb4-fe86-4492-9d89-c6e31bf1c036',
        //             method: 'eth_sendRawTransaction',
        //             params: [
        //             '0x02f86e82053903849502f900849a9a0d168405f7c1f0947ab80aeb6bb488b7f6c41c58e83ef248eb39c8828080c001a0ddd93f5ce9a6a0de130dc660e65d2cdf8784148b8c91b83635b8458e96a767a3a028c48b048bf041e530ded63a0d2198855043f782ef0aa47391a2afa9c50a5ff1'
        //             ]
        // }
    });

Отказ от ответственности: эта работа распространяется под лицензией Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)[2]. Пожалуйста, укажите источник при ее использовании. Автор: мэнбин[3] блог: мэнбин[4] Гитхаб: mengbin92[5] cnblogs: Непреднамеренно влюбляюсь в воду[6] Сообщество разработчиков облачных технологий Tencent: Мюнстер[7]

References

[1] здесь: https://docs.web3js.org/guides/wallet/promi_event [2] С указанием авторства-Некоммерческая-ShareAlike 4.0 интернациональность (CC BY-NC-SA 4.0): https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh [3] mengbin: mengbin1992@outlook.com [4] mengbin: https://mengbin.top [5] mengbin92: https://mengbin92.github.io/ [6] Влюбляюсь в воду нечаянно: https://www.cnblogs.com/lianshuiwuyi/ [7] Мюнстер: https://cloud.tencent.com/developer/user/6649301

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose