Typescript Generic

poburi·2020년 8월 11일
0

THL

목록 보기
6/10

함수 이름 우측에 <T>를 작성해 시작.
T는 타입 변수로 사용자가 제공한 타입으로 변환될 식별자.

interface useInputRequest<T> {
  initState: T;
  validation?: {
		[Key in keyof T]?: {
        	[Key in keyof ValidityState]?: string;
        }
	}
}

type useInputResponse<T> = [useInputState<T>, () => T];

function useInput<T>({initState, validation}: useInputRequest<T>): useInputResponse<T>{
	const inputRef = useRef<HTMLInputElement[]>([]);

	...
}

타입 추론을 활용해서 사용 시점에 타입을 제공하지 않을 수 있다.

profile
FE 개발자 poburi

0개의 댓글