iT邦幫忙

2021 iThome 鐵人賽

DAY 15
0
Modern Web

區塊鏈&DAPP介紹系列 第 15

[區塊鏈&DAPP介紹 Day15] Solidity 教學 - events

  • 分享至 

  • xImage
  •  

今天來介紹一下 solidity 裡面一個很特殊的東西 events

我們介紹了這幾天,都還沒有看到 solidity 提供的 logs 的使用法,solidity 的 logs 實現方法,就是要透過 events 來實現,當然 events 的功用不只這樣的功能,可以透過跟 web3 的合作達到事件監聽的作用,我們來看看下面範例。

//定義一個 log event
event log(
    string text
);

//定義一個 function
function Event() public {
    //透過emit 這樣就可以觸發 event
    emit log("log somethimg");
}

當然上面會有人說,把 log 儲存在 state variables,就可以了,的確可以儲存在變數上面。但是在區塊鏈上,儲存在上面的資料都是需要成本的,像 log 資訊,這種相對沒那麼重要的資料,而且不需要變動的,就很適合透過 events 的機制去儲存它,不過透過 events 儲存的資料,不能夠過 constract 去調用它,只能透過 web3.js 從外部去調用。後續我們會介紹 web3.js 的應用,也就是本系列的重點之一 Dapp 另一個重點。

明天我們來聊聊 solidity 最後幾個重點 libraries 。


上一篇
[區塊鏈&DAPP介紹 Day14] Solidity 教學 - interfaces
下一篇
[區塊鏈&DAPP介紹 Day16] Solidity 教學 - libraries
系列文
區塊鏈&DAPP介紹30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言