月亮链 月亮链
Ctrl+D收藏月亮链
首页 > USDT > 正文

atc:搞懂事件的使用,详细解读Solidity事件Event_atc币是什么币区块链工程专业学什么

作者:

时间:1900/1/1 0:00:00

什么是事件Evnet?

就是以EVM日志基础设备提供一个接口,当被事件调用时,出发参数存储到日志中,其与合约地址关联,并记录到区块链中。关系就是:区块链是打包交易区块组成的链条,每一个交易会包含0到多个记录,日志代表智能合约所触发事件。

DAPP中,监听了事件,当事件发生时,会回调。当然要注意的就是,日志和事件在合约内是无法被访问,即使是创建日志的合约。

在Solidity代码中,使用event关键字来定义一个事件,如:

eventEventName(addressbidder,uintamount);

这个用法和定义函数式一样的,并且事件在合约中同样可以被继承。触发一个事件使用emit(说明,之前的版本里并不需要使用emit),如:

沉睡3年的以太坊ICO投资者将5055枚ETH转入新地址:金色财经报道,Lookonchain监测数据显示,一沉睡3年的以太坊ICO参与者地址2小时前将5055枚ETH转移至新地址,价值约830万美元。[2023/2/23 12:24:12]

emitEventName(msg.sender,msg.value);

触发事件可以在任何函数中调用,如:

functiontestEvent()public{emitEventName(msg.sender,msg.value);}

监听事件

通过上面的介绍,可能大家还是不清楚事件有什么作用,点击”UpdataInfo”按钮之后,虽然调用智能合约成功,但是当前的界面并没有得到更新。使用事件监听,就可以很好地解决这个问题,让看看如何实现。

工业和信息化部组织开展区块链典型应用案例征集工作:金色财经消息,近日,工业和信息化部印发通知,组织开展2022年区块链典型应用案例征集工作。征集方向包括:创新技术及产品、区块链+实体经济、区块链+民生服务、区块链+智慧城市、区块链+政务服务。申报案例应当符合国家有关法律法规及相关产业政策要求,须已落地并取得成效,具有较高技术水平、明显的行业或区域特色及成熟商业模式,具备较强的代表性、示范性、创新性和可推广性,能充分体现区块链的技术特点和适用场景,对相关行业或企业具有较强借鉴意义和推广价值。(中国证券网)[2022/9/8 13:15:44]

修改合约,定义事件及触发事件

先回顾一下合约代码:

Spruce:SIWE标准EIP-4361已从“草案”状态变更为“审查”状态:7月19日消息,数字身份认证公司Spruce发推称,EIP-4361(使用以太坊登录,简称SIWE)作为一项EIP已经从“草案(draft)”状态变更为“审查(review)”状态。这是将“使用以太坊登录”作为广泛采用标准向前迈进的一大步。

据悉,EIP-4361描述了使用签名消息的现有Web2服务的身份验证方法。用户可以使用自己的私钥(带有相应的地址)进行身份验证,而不是使用用户名和密码的组合。

此前消息,Spruce于2021年10月与以太坊基金会、ENS共同制定了SIWE标准EIP-4361 并于去年年底发布了EIP-4361的实现源代码,并于今年5月发布其2.0版本。[2022/7/19 2:22:34]

pragmasolidity^0.4.21;contractInfoContract{stringfName;uintage;functionsetInfo(string_fName,uint_age)public{fName=_fName;age=_age;}functiongetInfo()publicconstantreturns(string,uint){return(fName,age);}}

Game Space与Bybit将于6月30日联合发售《Merge Bird》NFT盲盒:6月28日消息,Game Space与Bybit将于6月30日联合发售3200个《Merge Bird》NFT盲盒。此外,用户也可将《Merge Bird》NFT作为数字收藏品和PFP社交形象展示,并在OpenSea及Game Space内嵌市场上交易。[2022/6/28 1:35:25]

首先,需要定义一个事件:

eventInstructor(stringname,uintage);

这个事件中,会接受两个参数:name和age,也就是需要跟踪的两个信息。

然后,需要在setInfo函数中,触发Instructor事件,如:

functionsetInfo(string_fName,uint_age)public{fName=_fName;age=_age;emitInstructor(_fName,_age);}

在web3与智能合约交互实战时,点UpdataInfo按钮之后,会调用setlnfo函数,触发Instructor事件。

使用Web3监听事件,刷新UI

现在需要使用Web3监听事件,刷新UI。先回顾下之前的使用Web3和智能合约交互的代码:

<script>if(typeofweb3!=='undefined'){web3=newWeb3(web3.currentProvider);}else

{web3=newWeb3(newWeb3.providers.HttpProvider("http://localhost:7545"));}web3.eth.defaultAccount=web3.eth.accounts;varinfoContract=web3.eth.contract(ABIINFO);varinfo=infoContract.at('CONTRACTADDRESS');info.getInfo(function(error,result){if(!error){$("Billions项目组button").click(function(){info.setInfo($("Billions项目组age").val());});</script>

现在可以不需要info.getInfo()来获取信息,而改用监听事件获取信息,先定义一个变量引用事件:

varinstructorEvent=info.Instructor();

然后使用.watch()方法来添加一个回调函数:

instructorEvent.watch(function(error,result){if(!error){$("#info").html(result.args.name+'('+result.args.age+'yearsold)');}else{console.log(error);}});

标签:atc区块链ONTatc币是什么币区块链工程专业学什么区块链存证怎么弄区块链技术发展现状和趋势ONT币是什么币

USDT热门资讯
Stacks:Stacks 的 TVL 故事对 STX 持有者来说太有趣了,知道为什么_STX币

尽管价格下跌,但StacksTVL大幅飙升。在加权情绪指标下降后,对NFT的兴趣开始下降。Stacks是比特币的第1层解决方案,一直处于积极发展的接收端,其中Ordinals和Inscripti.

1900/1/1 0:00:00
SHIB:Shiba Inu 烧伤激增超过 30,000%,14 亿只 SHIB 被摧毁_SHI币加密货币是什么意思啊

柴犬(SHIB)的燃烧率正在急剧上升。根据Shibburn的数据,SHIB的燃烧率飙升了30,929.37%。销毁追踪器还指出,一笔交易导致销毁了14亿个SHIB代币.

1900/1/1 0:00:00
ETH:「崛起社区」在市场动荡中分析Lido Finance的潮起潮落_TVL币

除了少数方面外,最近的投降很少对LidoFinance生态系统产生负面影响。 信标链上的净存款在Lido池中增加。随着TVL下降,L2桥接增长了5%.

1900/1/1 0:00:00
BNB:「崛起社区」山寨币获得关注,而比特币的社会趋势下降_全球十大加密

根据市场情报平台Santiment提供的数据,随着比特币(BTC)开始从关键的26,000美元大关下跌,社交量和对山寨币的情绪大幅上升.

1900/1/1 0:00:00
Terra:SEC 指定的 Jump Trading 在 Terra 倒闭前支撑了它_Terra币是什么币LUNA币

据一位不愿透露姓名的消息人士称,据称JumpTrading在2月初被美国证券交易委员会挑出,因为他在整个2021年人为地维持稳定币与美元的平价.

1900/1/1 0:00:00
USDT:感恩有你,链客一周年!_USD价格SDT币

感恩有你,链客一周年! 2018年6月16日,天气:晴,在这一天,诞生了一个崭新的技术社区:报告:过去12个月加密货币劫持攻击激增399%:金色财经报道.

1900/1/1 0:00:00