컴포넌트 내 Event 지정

- JSX 상에서, "onClick={실행하고 싶은 함수명}"을 지정해주고, 컴포넌트 내에서 함수를 구현한다.
- onClick={ onIncrease }   // 맞는 문법 

- onClick={ onIncrease() } // 틀린 문법

- onChange= { onChange }

- const onChange = (e) => { setText(e.target.value); }; 처럼 event 객체를 받아서 Dom의 속성값에 접근 가능

import React, { useState } from 'react'; // react 패키지에서 useState 함수 불러옴 

function Counter() {
    const [val, setVal] = useState(0);   // 0은 변수 상태깂의 default 초기값
    const onIncrease = () = {
    	setVal(val + 1);
        // setVal(prevVal => prevVal + 1);
    }
    const onDecrease = () => {
    	setVal(val - 1);
        // setVal(prevVal => prevVal - 1);
    }
    
    const [text, setText] = useState("초기값입니다.");
    const onChange = (e) => {
    	setText(e.target.value); // e.target은 이벤트가 발생한 DOM을 가리킵니다.
    };
    const onReset = (e) => {
    	setText('');
    };
    return (
    	<div>
        	<h2> { val } </h2>
        	<button onClick={onIncrease}> +1 </button> // ★
            <button onClick={onDecrease}> -1 </button>
          
            // Input의 상태 저장이 필요할 경우
            <input onChange={onChange} value={text}/>  // ★
            
            <button onClick={onReset}> 초기화 </button>
        </div>
    );
}

- e.target은 이벤트가 발생한 DOM을 가리키고, e.target.value를 통해, 현재 input의 value값을 알 수 있다.

 

'[CS] IT 용어 모음' 카테고리의 다른 글

개념 사전 for Modern Application Development  (0) 2021.10.18
[React] Dom 접근 및 조작  (0) 2021.07.02
[React] 리액트 개요  (0) 2021.06.30
AM 프로젝트 따라잡기  (0) 2021.06.30
[React] 빠르게 정리하기  (0) 2021.06.07
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기