03. 이벤트 핸들링 (1) Intro

2022. 6. 10.·🎨 프론트엔드 공부/React & Next

출처 - 리액트를 다루는 기술(김민준 지음)


이벤트란?

사용자가 웹 브라우저에서 DOM 요소들과 상호작용 하는 것

예)

버튼에 마우스 커서 올렸을 때 -> onmouseover 이벤트

클릭했을 때 -> onclic 이벤트

Form 요소의 값이 바뀔 때 -> onchange 이벤트

 

리액트에서의 이벤트 시스템

1. 이벤트 이름은 카멜 표기법을 사용한다

HTML은 onclick 이지만

리액트는 onClick

 

HTML은 onkeyup 이지만

리액트는 onKeyUp

 

2. 이벤트에 함수 형태의 값을 전달

HTML에서 이벤트를 설정할 때는 큰따옴표 안에 실행할 코드를 넣었지만

리액트에서는 함수 형태의 객체를 전달

즉, 중괄호 안에 함수명만 넣음 -> () 안붙임

 

예시

 

import React, { useState } from 'react;

const Say = () => {
  const [message, setMessage] = useState('');
  const onClickEnter = () => setMessage('안녕하세요!');
  const onClickLeave = () => setMessage('안녕히 가세요!');
  
  const [color, setColor] = useState('black');
  
  return (
    <div>
      <button onClick={onClickEnter}>입장</button>
  // ...

 

3. DOM 요소에만 이벤트를 설정할 수 있다

DOM 요소 : div, button, input, form, span 등

'🎨 프론트엔드 공부/React & Next' 카테고리의 다른 글
  • React를 사용하는 이유 3가지
  • useReducer Hook
  • 02. 컴포넌트 (6) state를 전달받는 컴포넌트
  • 02. 컴포넌트 (5) useState
지식물원
지식물원
지식이 자라는 식물원!
  • 지식물원
    지식물원
    지식물원
  • 전체
    오늘
    어제
    • 분류 전체보기 (510)
      • 🎨 프론트엔드 공부 (247)
        • JS & TS (86)
        • HTML & CSS (22)
        • React & Next (49)
        • Vue & Nuxt (22)
        • 기타 (68)
      • 🤓 기술 학습 & 공부 기록 (116)
        • Node.js (0)
        • Python (37)
        • 백엔드 (0)
        • 딥러닝 (1)
        • 컴퓨터 일반 (72)
        • 개발 인프라 (6)
      • 👨‍💻 프로젝트 경험 (6)
        • Work (0)
        • Toy (6)
      • ⚙️ 개발 팁 & 노하우 (21)
        • 프론트엔드 (6)
        • 기타 (15)
      • ☕️ 커리어 & 인터뷰 준비 (88)
        • 코딩 테스트 (88)
      • 📰 기술 트렌드 & 생각 정리 (4)
      • 📚 기타 (25)
        • 마케팅 (15)
        • 비개발서적 (10)
  • 블로그 메뉴

    • 태그
  • 링크

  • 공지사항

    • 모바일 접속 시 코드 하이라이팅 깨질 때
  • 인기 글

  • hELLO· Designed By정상우.v4.10.3
지식물원
03. 이벤트 핸들링 (1) Intro
상단으로

티스토리툴바