智能合約開發實戰(七) - 事件(Event)

2022/02/19閱讀時間約 1 分鐘
事件(Event)在整個智能合約開發裡面是很常見也很常出現的應用,所以這篇我們就來說說Event到底該怎麼寫、怎麼應用。
廢話不多說,直接上程式碼:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.11;

contract Event {
  //定義event
  event Log(address sender, string message);

  function transfer() public {
    //xxxx做某一件事情

    //叫用event,前面都必須加"emit"才行
    emit Log(msg.sender, "I send 1 ether to you!");
  }
}
上圖是最常用的event,Log記錄,我們來看看實際上會怎麼顯示
發佈之後,會出現function "transfer",按下transfer後,在訊息裡面打開就可以看到Event的Log訊息了。
event主要是用來監聽function的相關動作或是訊息,把它記錄到區塊鏈的記錄當中,可以做為未來查詢之用,也可以做為和web3.js交互之用,這個在後續的篇幅上應該會看到,這邊就只先讓各位了解簡單的event寫法和應用就好,以防說的太多容易混淆。
有什麼想要了解或是不清楚的部份,歡迎留言和我分享,謝謝。
如果喜歡我的文章歡迎追隨,按愛心,我每週都會上新文章。
為什麼會看到廣告
宅D嘉
宅D嘉
有著十年以上的軟體開發經驗,喜歡投資理財,目前喜歡研究區塊鏈相關,了解虛擬貨幣投資或者是區塊鏈開發,喜歡把複雜的東西簡單化,樂於分享我的理財投資生活。
留言0
查看全部
發表第一個留言支持創作者!