-
[React] 클릭(click)이벤트 기초정리쬬의 React 2022. 12. 4. 12:32반응형
onClick
react에선 이벤트 함수들은 'on~'으로 시작한다. 때문에 click 이벤트를 발생시키려면 onClick 이벤트를 호출해야하는데 onClick을 사용할때 함수명을 clickHandler 또는 clickHandler() 로 선언하는것에 차이가 있다.
보통 react에선 ()를 통해 함수를 식별하기 때문에 ()괄호를 붙여서 함수를 이벤트에 넣은 경우 JSX가 읽혀질때 click이벤트로 같이 호출된다. 때문에 click 시에만 동작하게 하려면 괄호를 제거하고 사용해야한다.
👉 예시
import React from "react"; import Card from "../UI/Card"; import ExpenseDate from "./ExpenseDate"; import "./ExpenseItem.css"; // 취향에 따라 function / const 로 선언할 수 있다. const ExpenseItem = (props) => { const clickHandler = () => { console.log("Click"); }; return ( <Card className="expense-item"> <ExpenseDate date={props.date} /> <div className="expense-item__description"> <h2>{props.title}</h2> <div className="expense-item__price ">${props.amount}</div> {/* clickHandler 에 ()를 붙이면 안되는 이유 JSX 는 () 로 함수를 판단하기 때문에 load 될때 실행된다 */} <button onClick={clickHandler}>Change Title</button> </div> </Card> ); }; export default ExpenseItem;
반응형'쬬의 React' 카테고리의 다른 글
[React] next-i18next error / i18next Text content did not match. Server: "introMessage" Client: (0) 2023.06.28 [React] useEffect 와 CleanUp 작동방식 이해하기 + input 입력완료 후 감지 코드예시 (0) 2023.04.09 [React] 렌더링 상태 체크하기 (크롬 익스텐션 활용) (0) 2023.04.09 [React] input 상태 업데이트 useState,useRef (0) 2023.04.08 [React] createPortal 사용해 효율적으로 모달 관리해주기 (0) 2023.04.08