什么是固体事件 [英] What are Solidity Events

查看:19
本文介绍了什么是固体事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

很长一段时间以来,我一直在努力寻找一个解释,说明什么是可靠的事件(或区块链上下文中的事件)。据我所知,它们是一种存储(或记录)关于特定合同的信息的方式,然后可以在该合同的整个生命周期中更新这些信息。但这与普通的老变量有什么不同呢?为什么我不能只创建一个变量,然后用新信息简单地更新它?

推荐答案

来自docs

固态事件在EVM的日志记录功能之上提供抽象。应用程序可以通过Etherum客户端的RPC界面订阅和侦听这些事件。

离链应用订阅新的事件日志比订阅变量更改更容易。尤其是当变量不是public时。

同样适用于查询历史事件日志(通过JSON-RPC API及其包装器,如Web3或Ethers.js),以及变量的历史更改(复杂,需要查询每个块的节点并主动查找更改)。

示例:ERC-20令牌标准定义Transfer()事件。令牌协定每次传输(其令牌)时都会发出此事件。这允许区块链浏览器(或任何其他离链应用程序)对此事件做出反应-例如更新他们自己的令牌持有者数据库。如果没有这次活动,他们将无法(或至少是一种非常复杂的方式)了解转移的情况。

这篇关于什么是固体事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆