[typescript] JSX에서 이벤트 핸들러에서 상위 컴포넌트로 데이터 전달 방법
JSX에서 이벤트 핸들러를 사용하여 하위 컴포넌트에서 상위 컴포넌트로 데이터를 전달하는 방법은 Props
를 통해 가능합니다.
여기서는 TypeScript를 사용하여 JSX에서 이벤트 핸들러를 통해 상위 컴포넌트로 데이터를 전달하는 방법에 대해 알아보겠습니다.
하위 컴포넌트에서 이벤트 핸들러 정의
먼저, 하위 컴포넌트에서 이벤트 핸들러를 정의합니다. 이벤트 핸들러 내에서 Props
로 전달할 데이터를 포함한 콜백 함수를 호출합니다.
예를 들어, 버튼 클릭 이벤트 핸들러를 정의하는 경우:
import React from 'react';
interface ButtonProps {
onClick: () => void;
}
const Button: React.FC<ButtonProps> = ({ onClick }) => {
return <button onClick={onClick}>Click Me</button>;
};
export default Button;
상위 컴포넌트에서 하위 컴포넌트와 이벤트 핸들러 연결
이제, 상위 컴포넌트에서 하위 컴포넌트를 렌더링하고 필요한 데이터를 포함한 콜백 함수를 정의합니다.
import React from 'react';
import Button from './Button';
const ParentComponent: React.FC = () => {
const handleButtonClick = () => {
// 상위 컴포넌트로 데이터를 전달하는 작업 수행
};
return <Button onClick={handleButtonClick} />;
};
export default ParentComponent;
여기서 handleButtonClick
함수에서 상위 컴포넌트로 데이터를 전달하는 작업을 수행할 수 있습니다.
이와 같이, JSX에서 이벤트 핸들러를 통해 상위 컴포넌트로 데이터를 전달할 수 있습니다. 이를 통해 컴포넌트 간의 효율적인 데이터 흐름을 구현할 수 있습니다.