React와 Typescript를 함께 사용하기 : 간단한 6개의 팁
6 simple tips for working with React and TypeScript
Common tips, suggestions, and techniques useful when building React applications with TypeScript.
isamatov.com
Use utility types (유틸리티 타입)
- DRY 원칙과의 일관성 유지. 기존 타입을 재사용하여 코드의 반복을 줄입니다.
- 타입을 동기화합니다. 기본 타입을 변경하면 모든 하위 타입도 변경 사항을 적용합니다.
Typescript: Five most useful utility types for React
Let's explore TypeScript utility types for React. Utility types are a powerful feature for constructing new types.
isamatov.com
제네릭을 사용하여 재사용 가능한 컴포넌트 만들기
React.Component는 타입 파라미터를 허용하는 컴포넌트를 만드는 데 사용할 수 있는
제네릭 파라미터화된 타입입니다.
이 유형으로 제네릭 리스트 컴포넌트를 만드는 방법을 살펴보겠습니다.

위의 예에서 동적 타입 T를 입력으로 사용하는 제네릭 리스트 컴포넌트를 만들었습니다.
컴포넌트가 items props에 대해 모든 타입의 데이터를 허용할 수 있음을 의미합니다.
map 함수를 사용하여 배열의 각 item을 순회하며 itemRenderer 함수 prop을 사용하여 렌더링합니다.
React.CSSProperties 사용하기
React.CSSProperties는 CSS-in-JS 객체에 대한 React의 스타일 정보를 나타내는 타입입니다.
이 타입은 스타일 prop을 컴포넌트에 전달하고 해당 prop이 React에서 지원하는 방식으로 사용되는지 확인하는 데 유용합니다.
React.HTMLProps를 사용하여 HTML 요소 확장
상수 대신 타입 사용

오타를 방지하고 우리가 허용하는 것 이외의 variant(변형) 타입을 아무도 사용하지 않도록 할 수 있습니다.
또 다른 장점은 VSCode와 같은 IDE를 사용할 때 IntelliSense를 더 잘 지원한다는 것입니다.
변형을 자동 완성하고 코드에서 타입 검사를 받을 수 있습니다.
단축 앰비언트 모듈(shorthand ambient modules)을 사용하여 서드파티 타입 오류 해결
Ambient 선언은 TypeScript로 작성되지 않은 라이브러리의 API 모양을 설명하는 데 사용됩니다.
이들은 일반적으로 d.ts 파일에 정의됩니다.
declare module "hot-new-module";
참고
GitHub - piotrwitek/react-redux-typescript-guide: The complete guide to static typing in "React & Redux" apps using TypeScript
The complete guide to static typing in "React & Redux" apps using TypeScript - GitHub - piotrwitek/react-redux-typescript-guide: The complete guide to static typing in "React &am...
github.com