즐겁게, 코드
솔리디티 - 03. 이벤트 본문
솔리디티는 DAPP(탈중앙화 어플리케이션)의 로직을 담당하는데요, 어떻게 트랜잭션 내역과 계약 내용을 화면에 보여줄까요?
맞습니다! 바로 프론트엔드단이 별도로 필요한데요, 프론트엔드에 데이터를 넘겨주기 위해 이벤트를 활용합니다.
이벤트는 event
키워드로 선언할 수 있으며, 이벤트는 자바의 인터페이스처럼 본문을 구현하지 않습니다.
[솔리디티 예시 코드]
// onNewTransaction 이라는 이벤트를 정의합니다.
event onNewTransaction(uint id, uint data);
function add(uint id, uint data) public returns (uint) {
// add 함수가 실행되면 onNewTransaction 이벤트가 호출됩니다.
onNewTransaction(error, result);
return data;
}
[프론트엔드 예시 코드]
Contract.onNewTransaction((err, res) => {
console.log(res.id, res.data);
})
즉 솔리디티에서는 이벤트를 전달하는 상황과 이벤트(인터페이스)를 정의하고, 프론트엔드에서는 socket.io의 이벤트를 처리하는 것처럼 해당 이벤트에 대한 콜백 코드를 작성하면 됩니다.
반응형
'💬 언어 > Solidity' 카테고리의 다른 글
솔리디티 - 05. Storage와 Memory (0) | 2021.04.16 |
---|---|
솔리디티 - 04. 매핑과 msg.sender (0) | 2021.04.16 |
keccak256 함수로 난수 생성하기 (0) | 2021.04.16 |
솔리디티 - 02. 기본 문법 2 (함수) (0) | 2021.04.15 |
솔리디티 - 01. 기본 문법 1 (자료형과 연산) (1) | 2021.04.15 |
Comments
소소한 팁 : 광고를 눌러주시면, 제가 뮤지컬을 마음껏 보러다닐 수 있어요!
와!! 바로 눌러야겠네요! 😆