ethers.js7:检索事件(查找事件)

使用ethers.js读取智能合约释放的事件。检索事件的意思就是,查找链上发生的事件。

事件 Event

智能合约释放出的事件存储于以太坊虚拟机的日志中。日志分为两个主题topics和数据data部分,其中事件哈希和indexed变量存储在topics中,作为索引方便以后搜索;没有indexed变量存储在data中,不能被直接检索,但可以存储更复杂的数据结构。

以ERC20代币中的Transfer转账事件为例,在合约中它是这样声明的:

event Transfer(address indexed from, address indexed to, uint256 amount);

 它共记录了3个变量fromtoamount,分别对应代币的发出地址,接收地址和转账数量,其中fromto前面带有indexed关键字。转账时,Transfer事件会被记录,可以在etherscan中查到。

你可能感兴趣的:(区块链)