> 웹 프론트엔드 > JS 튜토리얼 > TypeScript : 모범 사례와 반응합니다

TypeScript : 모범 사례와 반응합니다

Lisa Kudrow
풀어 주다: 2025-02-10 13:42:10
원래의
899명이 탐색했습니다.

TypeScript : 모범 사례와 반응합니다 React and TypeScript는 요즘 많은 개발자들이 사용하는 두 가지 멋진 기술입니다. 일을하는 방법을 아는 것은 까다로울 수 있으며 때로는 정답을 찾기가 어려울 수 있습니다. 걱정하지 마십시오. 우리는 당신이 가질 수있는 의심을 명확히하기 위해 모범 사례와 함께 모범 사례를 구성했습니다. 다이빙을하자! 키 테이크 아웃

안전성을 위해 타자식 활용 : Compile Time에서 오류를 포착하여 코드 안전, 예측 가능성 및 개발자 생산성을 향상시키는 정적 타이핑의 혜택을 얻기 위해 Typescript를 사용합니다. 효율적으로 구성 : 강력한`tsconfig.json` 설정으로 시작하여 'strict', 'noemit'및`esmoduleinterop`과 같은 옵션을 활성화하여 모범 사례를 시행하고 처리 모듈 및 컴파일을 단순화합니다. eslint와 더 예쁘게 통합 : 일관된 코드 형식을 위해 Typection Parser와 Pretier로 Eslint를 설정하십시오. 이것은 특히 팀 환경에서 코드 품질과 일관성을 유지하는 데 도움이됩니다.

후크와 함께 TypeScript 사용 : Cleaner 및 Safer 코드를위한 React Hook의 유형을 추론하기 위해 TypeScript의 기능을 활용하십시오. 제네릭 및 노조 유형을 사용하여 복잡한 상태 논리를 처리합니다.

props and state를 정확하게 유형 : 구성 요소를 사용하여 구성 요소의 신뢰성과 유지 관리 가능성을 향상시키기 위해 TypeScript 인터페이스 또는 유형을 사용하여 구성 요소 소품 및 상태를 정의합니다. 프로젝트 설정에 모범 사례 채택 : 초기 설정을 위해 TypeScript 템플릿이있는 React 앱 작성을 사용하여 현명한 기본값으로 프로젝트를 신속하게 시작하고 TypeScript에 최적화 된 구성을 구축하십시오.

반응 및 타입 스크립트가 어떻게 작동하는지 우리가 시작하기 전에, 반응과 타입 스크립트가 어떻게 작동하는지 다시 방문합시다. React는 "사용자 인터페이스 구축을위한 JavaScript 라이브러리"이며 TypeScript는 "Plain JavaScript에 컴파일하는 JavaScript의 유형 슈퍼 셋"입니다. 함께 사용함으로써 본질적으로 유형의 JavaScript 버전을 사용하여 UI를 구축합니다. 함께 사용할 수있는 이유는 UI에 대한 정적으로 입력 된 언어 (TypeScript)의 이점을 얻는 것입니다. 이것은 더 많은 안전성과 더 적은 버그 배송을 의미합니다.

TypeScript가 내 반응 코드를 컴파일합니까? 항상 검토하기에 좋은 일반적인 질문은 TypeScript가 React 코드를 컴파일하는지 여부입니다. TypeScript가 작동하는 방식은이 상호 작용과 유사합니다 ts :“이봐, 이것이 모든 UI 코드입니까?” 반응 :“예!”

TS :“쿨! 컴파일하고 아무것도 놓치지 않았는지 확인하겠습니다.”

반응 :“나에게 좋은 소리!” 그래서 대답은 그렇습니다. 그러나 나중에 tsconfig.json 설정을 다룰 때 대부분의 시간은 "Noemit": true를 사용하고 싶을 것입니다. 이것이 의미하는 바는 TypeScript가 컴파일 후 JavaScript를 방출하지 않습니다. 일반적으로 우리는 유형 검사를하기 위해 TypeScript를 사용하기 때문입니다. 출력은 CRA 설정에서 반응 스크립트에 의해 처리됩니다. 우리는 원사 빌드를 실행하고 반응 스크립트는 생산을위한 출력을 번들로 묶습니다.

요약하려면 TypeScript는 반응 코드를 컴파일하여 코드를 유형 확인합니다. JavaScript 출력을 방출하지 않습니다 (대부분의 시나리오에서). 출력은 여전히 ​​비 형식 스크립트 반응 프로젝트와 유사합니다.

는 TypeScript가 React 및 WebPack과 함께 작동 할 수 있습니까? 예, TypeScript는 React 및 WebPack에서 작동 할 수 있습니다. 운 좋게도 웹 팩 문서에는 그 안내서가 있습니다.

희망적으로, 그것은 두 사람이 어떻게 함께 작동하는지에 대한 부드러운 새로 고침을 제공합니다. 이제 모범 사례를 위해!

모범 사례 우리는 가장 일반적인 질문을 연구하고 TypeScript와의 반응을위한 가장 일반적인 사용 사례의 편리한 목록을 구성했습니다. 이렇게하면이 기사가 자신의 프로젝트에서 참조로 사용할 수 있습니다.

구성 개발에서 가장 재미 있지만 가장 중요한 부분 중 하나는 구성입니다. 최대한의 효율성과 생산성을 제공하는 가장 짧은 시간 내에 어떻게 설정할 수 있습니까? 다음을 포함한 프로젝트 설정에 대해 논의 할 것입니다

tsconfig.json eslint Pretier

프로젝트 설정 React/TypeScript 앱을 시작하는 가장 빠른 방법은 TypeScript 템플릿과 함께 Create-React-App을 사용하는 것입니다. 실행하면 다음을 수행 할 수 있습니다

이렇게하면 TypeScript와의 반응을 쓰기 시작하는 최소한의 최소가 있습니다. 몇 가지 눈에 띄는 차이점은 다음과 같습니다.

.tsx 파일 확장자 tsconfig.json react-app-env.d.ts

TSX는 "TypeScript JSX"입니다. tsconfig.json은 일부 기본값이 설정된 TypeScript 구성 파일입니다. React-App-Env.d.ts는 React-Scripts의 유형을 참조하고 SVG 가져 오기를 허용하는 것과 같은 것들을 도와줍니다. tsconfig.json 운 좋게도, 최신 React/Typescript 템플릿은 우리를 위해 tsconfig.json을 생성합니다. 그러나 시작하기 위해 최소값을 추가합니다. 아래를 일치 시키도록 수정하는 것이 좋습니다. 각 옵션의 목적을 설명하기 위해 의견을 추가했습니다.

추가 권장 사항은 React-Typescript-CheatSheet 커뮤니티에서 나오고 설명은 공식 TypeScript 핸드북의 컴파일러 옵션 문서에서 나옵니다. 다른 옵션과 그들이하는 일에 대해 배우고 싶다면 이것은 훌륭한 자료입니다.

> eslint/prettier 코드가 프로젝트 또는 팀의 규칙을 따르고 스타일이 일관되도록하기 위해 Eslint와 Pretier를 설정하는 것이 좋습니다. 그들이 멋지게 재생하도록하려면 다음 단계를 따르십시오.

필요한 DEV 종속성 설치 :

    루트에서 .eslintrc.js 파일을 작성하고 다음을 추가하십시오.
  1. npx create-react-app my-app <span>--template typescript
    </span>
    로그인 후 복사
    로그인 후 복사
    로그인 후 복사
    로그인 후 복사
    더 예쁜 종속성 추가 :
  2. 루트에서 .prettierrc.js 파일을 작성하고 다음을 추가하십시오.
    <span>{
    </span>  <span>"compilerOptions": {
    </span>    <span>"target": "es5", // Specify ECMAScript target version
    </span>    <span>"lib": [
    </span>      <span>"dom",
    </span>      <span>"dom.iterable",
    </span>      <span>"esnext"
    </span>    <span>], // List of library files to be included in the compilation
    </span>    <span>"allowJs": true, // Allow JavaScript files to be compiled
    </span>    <span>"skipLibCheck": true, // Skip type checking of all declaration files
    </span>    <span>"esModuleInterop": true, // Disables namespace imports (import * as fs from "fs") and enables CJS/AMD/UMD style imports (import fs from "fs")
    </span>    <span>"allowSyntheticDefaultImports": true, // Allow default imports from modules with no default export
    </span>    <span>"strict": true, // Enable all strict type checking options
    </span>    <span>"forceConsistentCasingInFileNames": true, // Disallow inconsistently-cased references to the same file.
    </span>    <span>"module": "esnext", // Specify module code generation
    </span>    <span>"moduleResolution": "node", // Resolve modules using Node.js style
    </span>    <span>"isolatedModules": true, // Unconditionally emit imports for unresolved files
    </span>    <span>"resolveJsonModule": true, // Include modules imported with .json extension
    </span>    <span>"noEmit": true, // Do not emit output (meaning do not compile code, only perform type checking)
    </span>    <span>"jsx": "react", // Support JSX in .tsx files
    </span>    <span>"sourceMap": true, // Generate corrresponding .map file
    </span>    <span>"declaration": true, // Generate corresponding .d.ts file
    </span>    <span>"noUnusedLocals": true, // Report errors on unused locals
    </span>    <span>"noUnusedParameters": true, // Report errors on unused parameters
    </span>    <span>"incremental": true, // Enable incremental compilation by reading/writing information from prior compilations to a file on disk
    </span>    <span>"noFallthroughCasesInSwitch": true // Report errors for fallthrough cases in switch statement
    </span>  <span>},
    </span>  <span>"include": [
    </span>    <span>"src/**/*" // *** The files TypeScript should type check ***
    </span>  <span>],
    </span>  <span>"exclude": ["node_modules", "build"] // *** The files to not type check ***
    </span><span>}
    </span>
    로그인 후 복사
    로그인 후 복사
  3. .eslintrc.js 파일을 업데이트하십시오.
  4. <span>yarn add eslint @typescript-eslint/parser @typescript-eslint/eslint-plugin eslint-plugin-react --dev
    </span>
    로그인 후 복사
  5. 이 권장 사항은 Robert Cooper의“Eslint and Pretier 사용”이라는 커뮤니티 리소스에서 나온 것입니다. 이 리소스를 방문하는 경우이 규칙과 구성의 "왜"에 대한 자세한 내용을 읽을 수 있습니다. 우리는 eslint and 더 예쁘고 DX를 개선하기위한 다음 단계는 저장에서 코드를 자동으로 수정/예열하는 것입니다. 먼저, Eslint 확장자와 VS 코드의 더 예쁜 확장을 설치하십시오. 이렇게하면 Eslint가 편집자와 완벽하게 통합 될 수 있습니다.
    module<span>.exports =  {
    </span>  <span>parser:  '@typescript-eslint/parser',  // Specifies the ESLint parser
    </span>  <span>extends:  [
    </span>    <span>'plugin:react/recommended',  // Uses the recommended rules from @eslint-plugin-react
    </span>    <span>'plugin:@typescript-eslint/recommended',  // Uses the recommended rules from @typescript-eslint/eslint-plugin
    </span>  <span>],
    </span>  <span>parserOptions:  {
    </span>  <span>ecmaVersion:  2018,  // Allows for the parsing of modern ECMAScript features
    </span>  <span>sourceType:  'module',  // Allows for the use of imports
    </span>  <span>ecmaFeatures:  {
    </span>    <span>jsx:  true,  // Allows for the parsing of JSX
    </span>  <span>},
    </span>  <span>},
    </span>  <span>rules:  {
    </span>    <span>// Place to specify ESLint rules. Can be used to overwrite rules specified from the extended configs
    </span>    <span>// e.g. "@typescript-eslint/explicit-function-return-type": "off",
    </span>  <span>},
    </span>  <span>settings:  {
    </span>    <span>react:  {
    </span>      <span>version:  'detect',  // Tells eslint-plugin-react to automatically detect the version of React to use
    </span>    <span>},
    </span>  <span>},
    </span><span>};
    </span>
    로그인 후 복사
    다음은 .vscode/settings.json에 다음을 추가하여 작업 공간 설정을 업데이트합니다. 이를 통해 VS 코드가 마법을 작동시키고 저장할 때 코드를 수정할 수 있습니다. 아름답습니다! 이 제안은 또한 Robert Cooper의 이전에 연결된 기사“Typescript Project에서 Eslint and Pretier 사용”에서 나왔습니다.
  6. 참고 : React.fc에 대한 자세한 내용을 보려면 여기를보고 여기를 읽고 React.ReactNode를 읽으십시오. 구성 요소
    <span>yarn add prettier eslint-config-prettier eslint-plugin-prettier --dev
    </span>
    로그인 후 복사
    React의 핵심 개념 중 하나는 구성 요소입니다. 여기서는 반응 V16.8의 표준 구성 요소를 참조 할 것입니다. 일반적으로 기본 구성 요소에 대해 많은 관심이 있습니다. 예를 들어 보겠습니다 :
여기서 주요 차이점을 확인하십시오. 첫 번째 예에서는 기능을

함수 선언

로 작성합니다. 우리는 리턴 유형 에 rect.node에 주석을 달게됩니다. 대조적으로, 두 번째 예제는

function expression을 사용합니다.

두 번째 인스턴스는 값이나 표현 대신 함수를 반환하기 때문에 반응에 대한 react.fc와 함수 유형

에 주석을 달 수 있습니다. 함수 구성 요소”. 둘을 기억하는 것은 혼란 스러울 수 있습니다. 대부분 디자인 선택의 문제입니다. 프로젝트에서 어느 쪽을 사용하든 일관되게 사용하십시오.

소품 다음 핵심 개념은 소품입니다. 인터페이스 또는 유형을 사용하여 소품을 정의 할 수 있습니다. 또 다른 예를 살펴 보겠습니다 :

유형이나 인터페이스와 관련하여 React-Typescript-CheatSheet 커뮤니티가 제시 한 지침을 따르는 것이 좋습니다.

    "라이브러리 또는 3 자 주변 유형 정의를 작성할 때 항상 공개 API 정의에 인터페이스를 사용하십시오." “반응 구성 요소 소품과 상태에 유형을 사용하는 것을 고려하십시오.
  • 당신은 토론에 대한 자세한 내용을 읽고 여기에서 유형과 인터페이스를 비교하는 편리한 테이블을 볼 수 있습니다. 조금 더 실용적인 것을 볼 수 있도록 한 예를 살펴 보겠습니다.
  • 이 구성 요소에서는 소품에 유형을 사용합니다. 각 소품에는 다른 개발자에게 더 많은 컨텍스트를 제공하기 위해 그 위에 나열된 간단한 설명이 있습니다. ? 색상이라는 소품 후에는 선택 사항임을 나타냅니다. Children Prop은 반응을 취합니다 .reactnode는 구성 요소의 유효한 반환 값을 허용하기 때문에 (여기에서 자세히 알아보십시오). 선택적 색상 소품을 설명하기 위해 파괴 할 때 기본값을 사용합니다. 이 예제는 기본 사항을 다루고 소품에 대한 유형을 작성하고 옵션 및 기본값을 모두 사용해야한다는 것을 보여 주어야합니다.
  • . 일반적으로, 반응 및 타입 스크립트 프로젝트에 소품을 쓸 때 이러한 것들을 명심하십시오 : .
  • tsdoc 표기법 /** * /. 를 사용하여 항상 소품에 설명 댓글을 추가하십시오. 구성 요소 소품에 유형이나 인터페이스를 사용하든 일관되게 사용하십시오. 소품이 선택 사항 인 경우 적절하게 처리하거나 기본값을 사용하십시오.

후크 운 좋게도, 후크를 사용할 때 TypeScript 유형 추론이 잘 작동합니다. 이것은 당신이 걱정할 것이 많지 않다는 것을 의미합니다. 예를 들어,이 예를 들어보십시오 :

typeScript는 usestate hook에서 사용할 수있는 값을 유추합니다. 이곳은 React and TypeScript가 함께 작동하고 아름답습니다.

드문 경우에는 널리 값으로 후크를 초기화 해야하는 경우 일반적인 값을 사용하여 일반을 사용하여 연합을 통과하여 후크를 올바르게 입력 할 수 있습니다. 이 인스턴스를 참조하십시오 :
npx create-react-app my-app <span>--template typescript
</span>
로그인 후 복사
로그인 후 복사
로그인 후 복사
로그인 후 복사
고리로 타입 스크립트가 빛나는 다른 곳은 우레 에슈퍼와 함께 차별화 된 노조를 활용할 수 있습니다. 유용한 예는 다음과 같습니다.

출처 : React-typescript-cheatsheet hooks 섹션

  • 여기의 아름다움은 차별적 인 노조의 유용성에 있습니다. 행동이 어떻게 비슷한 두 가지 대상의 결합을 가지고 있는지 주목하십시오. 속성 유형은 문자열 문자입니다. 이것과 유형 문자열의 차이점은 값이 유형에 정의 된

    리터럴

    문자열과 일치해야한다는 것입니다. 이것은 개발자가 "set_one"또는 "set_two"에 대한 유형 키가있는 동작 만 호출 할 수 있기 때문에 프로그램이 추가 안전하다는 것을 의미합니다. 보시다시피, 후크는 React 및 TypeScript 프로젝트의 특성에 많은 복잡성을 추가하지 않습니다. 무엇이든, 그들은 듀오에 잘 빌려줍니다.
      공통 사용 사례 이 섹션은 React와 함께 TypeScript를 사용할 때 사람들이 걸려 넘어지는 가장 일반적인 사용 사례를 다루는 것입니다. 우리는 이것을 공유함으로써, 당신은 함정을 피하고이 지식을 다른 사람들과 공유 할 수 있기를 바랍니다.

      . 양식 이벤트 처리 가장 일반적인 사례 중 하나는 입력 필드에서 사용 된 OnChange를 양식으로 올바르게 입력하는 것입니다. 예는 다음과 같습니다.

      확장 구성 요소 소품 때때로 하나의 구성 요소에 대해 선언 된 구성 요소 소품을 가져 와서 다른 구성 요소에서 사용하도록 확장하려고합니다. 그러나 하나 또는 두 개를 수정하고 싶을 수도 있습니다. 성분 소품, 유형 또는 인터페이스를 입력하는 두 가지 방법을 어떻게 보았는지 기억하십니까? 사용한 사람에 따라 구성 요소 소품을 확장하는 방법이 결정됩니다. 먼저 유형을 사용하는 방법을 살펴 보겠습니다

      인터페이스를 사용하여 소품을 선언 한 경우 키워드를 사용하여 인터페이스를 기본적으로 "확장"하지만 수정 또는 두 개를 만들 수 있습니다.

      두 가지 방법 모두 문제를 해결합니다. 어느 것을 사용해야하는지 결정하는 것은 당신에게 달려 있습니다. 개인적으로 인터페이스를 확장하는 것은 더 읽기 쉬운 느낌이 들지만 궁극적으로 그것은 당신과 당신의 팀에게 달려 있습니다.

      . 당신은 TypeScript 핸드북에서 두 개념에 대해 자세히 알아볼 수 있습니다 :

      교차 유형

      인터페이스 확장
      npx create-react-app my-app <span>--template typescript
      </span>
      로그인 후 복사
      로그인 후 복사
      로그인 후 복사
      로그인 후 복사
      타사 라이브러리 Apollo와 같은 GraphQL 클라이언트의 경우 또는 React Testing Library와 같은 테스트를위한 것이 든, 우리는 종종 React 및 TypeScript 프로젝트에서 타사 라이브러리를 사용합니다. 이런 일이 발생하면 가장 먼저하고 싶은 일은 TypeScript 유형 정의가 장착 된 @Types 패키지가 있는지 확인하는 것입니다. 실행하여 그렇게 할 수 있습니다 :

      예를 들어, jest를 사용하는 경우

      를 사용하여 수행 할 수 있습니다.

      이렇게하면 프로젝트에서 농담을 사용할 때마다 추가 된 유형 안전성이 추가됩니다.

      @Types 네임 스페이스는 패키지 유형 정의를 위해 예약되어 있습니다. 그들은 Semusttyped라는 저장소에 살고 있으며, 이는 TypeScript 팀과 부분적으로 부분적으로 커뮤니티에 의해 유지됩니다.

      <span>{
      </span>  <span>"compilerOptions": {
      </span>    <span>"target": "es5", // Specify ECMAScript target version
      </span>    <span>"lib": [
      </span>      <span>"dom",
      </span>      <span>"dom.iterable",
      </span>      <span>"esnext"
      </span>    <span>], // List of library files to be included in the compilation
      </span>    <span>"allowJs": true, // Allow JavaScript files to be compiled
      </span>    <span>"skipLibCheck": true, // Skip type checking of all declaration files
      </span>    <span>"esModuleInterop": true, // Disables namespace imports (import * as fs from "fs") and enables CJS/AMD/UMD style imports (import fs from "fs")
      </span>    <span>"allowSyntheticDefaultImports": true, // Allow default imports from modules with no default export
      </span>    <span>"strict": true, // Enable all strict type checking options
      </span>    <span>"forceConsistentCasingInFileNames": true, // Disallow inconsistently-cased references to the same file.
      </span>    <span>"module": "esnext", // Specify module code generation
      </span>    <span>"moduleResolution": "node", // Resolve modules using Node.js style
      </span>    <span>"isolatedModules": true, // Unconditionally emit imports for unresolved files
      </span>    <span>"resolveJsonModule": true, // Include modules imported with .json extension
      </span>    <span>"noEmit": true, // Do not emit output (meaning do not compile code, only perform type checking)
      </span>    <span>"jsx": "react", // Support JSX in .tsx files
      </span>    <span>"sourceMap": true, // Generate corrresponding .map file
      </span>    <span>"declaration": true, // Generate corresponding .d.ts file
      </span>    <span>"noUnusedLocals": true, // Report errors on unused locals
      </span>    <span>"noUnusedParameters": true, // Report errors on unused parameters
      </span>    <span>"incremental": true, // Enable incremental compilation by reading/writing information from prior compilations to a file on disk
      </span>    <span>"noFallthroughCasesInSwitch": true // Report errors for fallthrough cases in switch statement
      </span>  <span>},
      </span>  <span>"include": [
      </span>    <span>"src/**/*" // *** The files TypeScript should type check ***
      </span>  <span>],
      </span>  <span>"exclude": ["node_modules", "build"] // *** The files to not type check ***
      </span><span>}
      </span>
      로그인 후 복사
      로그인 후 복사
      . 이들은 내 package.json의 종속성 또는 devdependencies로 저장해야합니까? 짧은 대답은 "그것은 의존한다"입니다. 대부분의 경우 웹 애플리케이션을 구축하면 DevDependencies에 따라 갈 수 있습니다. 그러나 TypeScript에서 React 라이브러리를 작성하는 경우 종속성으로 포함시킬 수 있습니다. 스택 오버플로에는 이에 대한 몇 가지 답변이 있습니다. 자세한 내용은 확인할 수 있습니다.

      @types 패키지가 없으면 어떻게됩니까? NPM에서 @Types 패키지를 찾지 못하면 본질적으로 두 가지 옵션이 있습니다.

        기본 선언 파일을 추가하십시오 철저한 선언 파일을 추가하십시오
      1. 첫 번째 옵션은 패키지 이름을 기반으로 파일을 만들어 루트에 넣는 것을 의미합니다. 예를 들어, 패키지 바나나 -JS에 유형이 필요한 경우 루트에서 바나나 -js.d.ts라는 기본 선언 파일을 만들 수 있습니다.
      2. 이것은 당신에게 유형 안전을 제공하지는 않지만 차단 해제됩니다.
      3. 더 철저한 선언 파일은 라이브러리/패키지에 유형을 추가하는 곳입니다.
      4. 선언 파일을 작성한 적이 없다면 공식 TypeScript 핸드북의 안내서를 살펴 보는 것이 좋습니다.
      요약 최상의 방식으로 React 및 TypeScript를 함께 사용하면 정보의 양으로 인해 약간의 학습이 필요하지만 장기적으로 혜택은 엄청나게 상환됩니다. 이 기사에서는 구성, 구성 요소, 소품, 후크, 일반적인 사용 사례 및 타사 라이브러리를 다루었습니다. 우리는 많은 개별 영역으로 더 깊이 뛰어들 수 있지만 모범 사례를 준수하는 데 필요한 80%를 포함해야합니다.

      이 작업을 실제로보고 싶다면 Github 에서이 예제를 볼 수 있습니다. 연락을 원 하거나이 기사에 대한 피드백을 공유하거나 두 기술 사용에 대한 채팅을 원하시면 Twitter @jsjoeio에서 저에게 연락 할 수 있습니다.

      추가 읽기 더 깊이 다이빙하고 싶다면 다음과 같은 리소스가 있습니다. react-typescript-cheatsheet 이러한 권장 사항 중 많은 사람들이 React 유형의 스크립트 중 시트에서 직접 나왔습니다. 반응 유형의 스크립트에 대한 구체적인 예 또는 세부 사항을 찾고 있다면 이곳이 갈 곳입니다. 우리는 기여를 환영합니다!
      npx create-react-app my-app <span>--template typescript
      </span>
      로그인 후 복사
      로그인 후 복사
      로그인 후 복사
      로그인 후 복사
      공식 타입 스크립트 핸드북

      또 다른 환상적인 리소스는 TypeScript 핸드북입니다. 이것은 TypeScript 팀에 의해 최신 상태로 유지되며 언어의 내부 작업에 대한 예제와 심층적 인 설명을 제공합니다. 타입 스크립트 놀이터 브라우저에서 바로 TypeScript 코드로 반응을 테스트 할 수 있다는 것을 알고 있습니까? 당신이해야 할 일은 import React 만 있으면됩니다. 다음은 시작할 수있는 링크입니다.

      TypeScript 기술을 발전시키는 실용적인 방법

      앞으로 나아갈 때 지속적인 학습을 위해 자신을 설정하기 위해 TypeScript 기술을 발전시키는 실용적인 방법에 대한 가이드를 읽으십시오.TypeScript와 반응에 대한 FAQ는 입니다 TypeScript와의 반응을 사용할 수 있습니까?

  • ES는 TypeScript와의 반응을 절대적으로 사용할 수 있습니다. 실제로, 반응과 TypeScript와 결합하는 것은 웹 개발 커뮤니티에서 점점 인기를 얻고 있습니다. TypeScript는 강화 된 툴링 및 유형 안전성을 제공하는 정적으로 입력 한 JavaScript의 슈퍼 세트로 강력하고 유지 관리 가능한 반응 응용 프로그램을 구축하기위한 훌륭한 선택입니다.

    TypeScript와의 반응을 사용할 때 일반적으로 TypeScript 클래스 또는 기능 구성 요소로 반응 구성 요소를 생성합니다. TypeScript 함수 서명. TypeScript를 사용하면 소품 및 상태에 대한 강력한 유형을 정의하여 런타임 오류의 위험을 줄이고 코드베이스를보다 예측할 수 있습니다. 또한 TypeScript의 자동 완성 및 유형 확인 현대 코드 편집기는 개발 중에 귀중한 지원을 제공합니다.


    TypeScript가있는 React 프로젝트를 시작하려면 TypeScript 템플릿이있는 React App 만들기와 같은 도구를 사용할 수 있습니다. TypeScript를 사용하면 React와 함께 동적 및 대화식 사용자 인터페이스를 구축하는 동안 정적 타이핑의 이점을 누릴 수있어보다 신뢰할 수 있고 유지 관리 가능한 웹 응용 프로그램이 생성됩니다.
    REACT에 TypeScript가 필요합니까? React Applications를 구축하는 데 TypeScript가 필요하지 않지만 매우 유익 할 수 있습니다. React는 원래 JavaScript (ECMAScript)를 사용하여 개발되었으며 많은 REACT 응용 프로그램은 여전히 ​​일반 JavaScript로 작성됩니다. React는 JavaScript와 완벽하게 작동하며 TypeScript없이 완전히 기능적이고 효율적인 React 응용 프로그램을 만들 수 있습니다.

    그러나 TypeScript는 React로 작업 할 때 상당한 이점을 제공 할 수 있습니다. TypeScript는 정적으로 입력 한 JavaScript의 슈퍼 세트이므로 유형 주석을 추가하고 JavaScript 코드를 확인합니다. 이러한 유형 주석은 컴파일 타임에 유형 관련 오류를 포착하여 개선 된 코드 품질과 유지 관리 가능성을 제공 할 수 있습니다. TypeScript는 소품, 상태 및 기능 매개 변수에 대한 유형 안전을 제공하여 런타임 오류의 가능성을 줄임으로써 크고 복잡한 반응 코드베이스를보다 관리하기 쉽게 만들 수 있습니다.

    요약하면, TypeScript는 React의 요구 사항이 아니며 React를 효과적으로 사용할 수 있습니다. 평범한 JavaScript. 그러나 TypeScript는 유형 검사를 추가하고 코드 예측 가능성을 향상시켜 개발 경험을 향상시켜 특히 더 크고 더 복잡한 프로젝트에서 강력하고 유지 관리 가능한 React 응용 프로그램을 구축하는 데 유용한 선택입니다.

    . React Apps에서 TypeScript를 사용하는 방법?

    TypeScript가 포함 된 새로운 React 프로젝트를 설정하여 시작하십시오. TypeScript 템플릿을 사용하여 React App 만들기와 같은 도구를 사용하거나 기존 React 프로젝트에서 TypeScript를 수동으로 구성 할 수 있습니다. 다음, TypeScript를 사용하여 React 구성 요소를 작성하십시오. TypeScript 함수 서명으로 기능 구성 요소를 만들거나 클래스 구성 요소에 TypeScript 클래스를 사용할 수 있습니다. TypeScript를 사용하면 소품 유형 및 상태 유형을 지정하여 코드 편집기에서 강력한 유형 확인 및 자동 완성 지원을 제공 할 수 있습니다. React 앱에서 타사 라이브러리 또는 패키지를 사용하는 경우 해당 종속성에 대한 TypeScript 유형 정의를 설치하십시오. 많은 인기있는 라이브러리에는 확실히 커뮤니티에서 관리 된 Typescript 유형 선언이 있습니다. 확실한

    react.js와 React Typecript의 차이점은 무엇입니까?

    react.js와 React Typecript의 주요 차이점은 선택입니다. 개발에 사용되는 프로그래밍 언어. React.js를 사용할 때 개발자는 일반적으로 응용 프로그램을 일반 JavaScript로 작성하여 종종 ES6 및 ES7과 같은 최신 JavaScript 기능을 활용합니다. React.js의 주목할만한 특성 중 하나는 기본적으로 엄격한 타이핑을 시행하지 않는다는 것입니다. 결과적으로 개발자는 유형 검증 및 오류 감지를위한 Proptypes와 같은 런타임 검사 및 도구에 의존합니다.

    React Typecript : 반응식은 RACT 애플리케이션에서 JavaScript의 정적으로 입력 된 슈퍼 세트 인 TypeScript를 사용합니다. 개발. React TypeScript를 사용하면 개발자는 TypeScript의 구문을 사용하여 React 구성 요소를 작성합니다. 이 접근법은 개발 중에 정적 유형 검사라는 중요한 이점을 제공합니다. TypeScript는 개발자가 소품, 상태 및 기타 데이터의 유형 및 인터페이스를 정의 할 수있게 해주므로 런타임이 아닌 컴파일 타임에서 유형 관련 오류를 포착 할 수 있습니다. 이로 인해 코드 품질이 향상되고 코드 예측 가능성이 향상되고 런타임 오류가 줄어 듭니다.

    요약하면 React.js는 사용자 인터페이스를 구축하기위한 JavaScript 라이브러리이지만 React TypeScript는 동일한 라이브러리이지만 TypeScript와 통합되어 Enhanced를 제공합니다. 안전 및 개발 지원 유형. React.js와 React Typescript 간의 선택은 프로젝트 요구 사항, 개발자 기본 설정 및 특정 응용 프로그램에 대한 정적 타이핑의 중요성에 따라 다릅니다. 두 옵션 모두 유효하고 웹 응용 프로그램 및 사용자 인터페이스 개발에 널리 사용됩니다. typescript와 반응을 시작해야합니까?

    TypeScript 또는 JavaScript가있는 React 프로젝트를 시작하는 것은 다양한 고려 사항에 따라 다릅니다.

    TypeScript로 시작 : 강력한 유형 안전을 우선시하고 개선 될 때 TypeScript로 시작할 수 있습니다. 개발 도구. TypeScript의 정적 유형 검사는 컴파일 타임에 오류를 포착하여보다 강력하고 유지 관리 가능한 코드로 이어집니다. 상당한 규모 또는 복잡한 프로젝트를 수행하는 경우 TypeScript는 버그를 방지하고 코드베이스를보다 쉽게 ​​관리 할 수 ​​있도록하는 데 특히 도움이 될 수 있습니다. TypeScript는 또한 유형 정의를 통해 강화 된 코드 문서를 제공하여 팀 내에서 코드 가독성 및 협업을 향상시킬 수 있습니다.

    JavaScript 선택 : JavaScript를 선택하는 것이 소규모 프로젝트 또는 타이트한 마감일로 작업 할 때 더 적합 할 수 있습니다. JavaScript는 더 가볍고 학습 곡선이 짧아서 더 빠르게 설정하고 시작할 수 있습니다. 팀이 TypeScript에 대한 경험이 부족하거나 프로젝트 요구 사항에 강력한 타이핑이 필요하지 않은 경우 JavaScript가 실용적인 선택 일 수 있습니다. 또한 JavaScript Ecosystem은 광범위한 라이브러리 및 리소스 모음을 자랑하여 프로젝트에 대한 솔루션과 지원을보다 쉽게 ​​찾을 수 있습니다.

    위 내용은 TypeScript : 모범 사례와 반응합니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

    본 웹사이트의 성명
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
    저자별 최신 기사
    인기 튜토리얼
    더>
    최신 다운로드
    더>
    웹 효과
    웹사이트 소스 코드
    웹사이트 자료
    프론트엔드 템플릿