Post

React TypeScript 프로퍼티로 SetState가지기

개발하다보니 모달을 껐다 켰다하는 props를 부모에 callback함수를 호출해 제어하기 위해 SetStateTypeScript Interface로 정의하고 싶은 경우가 생겼다.

그런경우 아래와 같이 코드를 사용하면 된다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import { Dispatch, SetStateAciton } from "react"

interFace IModal{
    SetShow: Dispatch<SetStateAction<boolean>>;
}

const modal =({SetShow}:IModal): JSX.Element => {
    const onCloseModal = useCallback((): void => {
        SetShow(false);
    });

    return(
        <div>
            modal
        </div>
        <button onClick ={onCloseModal}>
            modal Close
        </button>
    )
}
This post is licensed under CC BY 4.0 by the author.