Solidityの基礎:イベントを宣言する
イベントとは
イベントとは、スマートコントラクトにおいて、特定の関数が実行されたことなどをフロントエンドに通知するための仕組みです。
関数内でイベントを発火させることで、その値を含めてフロントエンドで用いることができます。
イベントを定義する
Solidityで関数を宣言する際には、以下のようにイベントの宣言および発火を記述します。
「HumanCreated」というイベントを定義する場合
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
pragma solidity ^0.4.19; contract SampleContract { //イベントを宣言 event HumanCreated(uint humanID, uint age, uint name); int public age; string public name; struct Human { int age; string name; } Human[] public people; function createHuman(int _age, string _name) private { people.push(Human(_age, _name)); uint id = people.length - 1; //イベントを発火 emit HumanCreated(id, _age, _name); } } |
コメントを残す