블록체인 학습
0 XP

실습: 기본 이벤트 발행하기

이번 실습에서는 이벤트를 선언 하고 함수 안에서 emit 으로 발행 하는 가장 기본적인 흐름을 직접 작성합니다. 사실상 이 두 단계가 이벤트의 전부입니다.

event Stored(uint256 value); 처럼 컨트랙트 상단에 이벤트를 선언 하면 "이런 사건이 있을 수 있다"는 틀만 정의됩니다. 실제 로그 가 남으려면 함수 안에서 emit Stored(value); 로 발행 해야 합니다. 선언만 하고 발행하지 않으면 외부 앱은 아무 변화도 감지하지 못합니다.

emit 으로 넘기는 인자의 순서와 타입 은 이벤트 선언과 정확히 같아야 합니다. Stored(uint256 value) 로 선언했다면 emit Stored(value); 처럼 uint256 값 하나를 넘겨야 합니다.

해야 할 일:

  1. EventDemo 컨트랙트 안에 Stored 라는 이벤트를 선언하세요. 매개변수는 uint256 value 하나입니다.
  2. store 라는 public 함수를 만드세요. 매개변수로 uint256 value 를 받습니다.
  3. store 함수 안에서 emit Stored(value); 로 이벤트를 발행하세요.

이 Stored 이벤트는 상태 변수 에 값을 저장하지 않고 로그 만 남깁니다. "저장됐다"는 사실만 외부에 알리는, 가장 가벼운 이벤트 활용 예입니다.

완성 후 Run 을 눌러 모든 조건을 통과하는지 확인하세요.

Code Editor
에디터를 불러오는 중...
실행 결과

Run 버튼을 눌러 코드를 실행하세요.