본문 바로가기
Front end/React

[React] React와 TypeScript

by 더 이프 2024. 5. 7.
728x90

목차

    React와 TypeScript: 강력한 타입 체크로 애플리케이션 품질 향상시키기 🛠️🔍

    안녕하세요, 웹 개발의 최신 트렌드를 따라가는 개발자 여러분! 오늘은 React 애플리케이션에서 TypeScript를 사용하는 이점과 구현 방법에 대해 알아보겠습니다. TypeScript는 JavaScript의 슈퍼셋으로, 강력한 타입 시스템과 최신 ECMAScript 기능을 제공합니다. React와 함께 사용하면, 개발 과정에서의 오류를 줄이고, 유지보수성을 향상시킬 수 있습니다.


    TypeScript의 기본 이해

    TypeScript란?

    • Microsoft에서 개발한 오픈 소스 언어로, JavaScript에 타입을 추가하여 보다 안정적인 코드를 작성할 수 있게 해줍니다.
    • 컴파일 시 타입 오류를 포착하여 런타임 에러의 가능성을 줄여줍니다.

     

    React 프로젝트에 TypeScript 통합하기

    1. TypeScript 설치 및 프로젝트 설정

    TypeScript를 사용하려면, 먼저 TypeScript와 필요한 타입 선언 파일을 설치해야 합니다.

    npm install --save typescript @types/node @types/react @types/react-dom @types/jest

    2. TypeScript 설정 파일 생성

    프로젝트 루트에 tsconfig.json 파일을 생성하고, TypeScript 컴파일러에 대한 구성 옵션을 정의합니다.

    {
      "compilerOptions": {
        "target": "es5",
        "lib": ["dom", "dom.iterable", "esnext"],
        "allowJs": true,
        "skipLibCheck": true,
        "esModuleInterop": true,
        "allowSyntheticDefaultImports": true,
        "strict": true,
        "forceConsistentCasingInFileNames": true,
        "module": "esnext",
        "moduleResolution": "node",
        "resolveJsonModule": true,
        "isolatedModules": true,
        "noEmit": true,
        "jsx": "react-jsx"
      },
      "include": ["src"]
    }

    3. 기존 JavaScript 파일을 TypeScript 파일로 변환

    .js 파일의 확장자를 .tsx (TypeScript JSX 파일)로 변경하고, 필요한 타입을 정의합니다.

     

    TypeScript를 사용한 타입 안전한 컴포넌트 개발

    TypeScript를 사용하면 props, state 등의 구조를 명확히 정의할 수 있습니다. 이는 개발 과정에서의 실수를 줄이고, 팀원 간의 협업을 쉽게 만듭니다.

    interface AppProps {
      title: string;
      isActive: boolean;
    }
    
    const App: React.FC<AppProps> = ({ title, isActive }) => {
      return <h1>{title} {isActive ? 'Active' : 'Inactive'}</h1>;
    };

     

    React와 TypeScript의 이점

    • 타입 안전성: 컴파일 시점에 오류를 포착하여 런타임 오류를 줄일 수 있습니다.
    • 개발자 경험 향상: 코드 자동 완성, 인터페이스, 타입 추론 등의 기능을 통해 더 빠르고 정확한 개발이 가능합니다.
    • 유지보수성 향상: 명확한 타입 정의로 코드를 이해하기 쉬워지며, 대규모 애플리케이션의 유지보수가 용이해집니다.

     

    마무리하며...

    TypeScript와 React를 결합하면, 강력한 타입 시스템과 유연한 UI 개발이라는 두 가지 장점을 동시에 누릴 수 있습니다. 타입스크립트를 도입하여 보다 안정적이고 효율적인 리액트 애플리케이션 개발에 도전해 보세요!


    Reference:

     

    JavaScript With Syntax For Types.

    TypeScript extends JavaScript by adding types to the language. TypeScript speeds up your development experience by catching errors and providing fixes before you even run your code.

    www.typescriptlang.org

     

    Adding TypeScript | Create React App

    Note: this feature is available with react-scripts@2.1.0 and higher.

    create-react-app.dev