React Type TypeScript 공부
목적
React와 자바 스크립트를 이용하여 좋은 프로젝트를 만들기위해
순서
- Type Scipt가 무엇인가?
- 프로젝트 결과 미리 보기
- React Typescript 프로젝트 세팅
- TypeScipt 기본
Type Scipt가 무엇인가?
TypeScipt는 java Script를 기반으로 만들어 졌다.
프로젝트 결과 미리 보기
React Typescript 프로젝트 세팅
타입 스크립트를 시작하는 리액트 만들기 위해서 다음을 시행한다.
npx create-react-app typescript-tutorial --template typescript
해당 프로젝트에 들어가서 프로그램이 제대로 돌아가는확인한다.
npm start
사용하지 않을 파일 삭제한다
- logo.svg( 파일안에 들어가서 쓰는곳도 지워야한다)
- setupTest.ts
- reportWebVitals.ts (파일에서 쓰는곳이 있는데 찾아서 지우면된다)
- App.test.tsx
TypeScipt 기본
- 변수 선언시 자료형을 밝혀줘야한다
let name: String = "Leejeunghun";
- 자료형을 맞는 형태를 써야한다
let name: string;
let age : number;
let isStudent : boolean;
let hobbies: string[];
let role:[number,string] ;//튜플
// 오브젝트도 선언이 가능하다
type Person= {
name : string;
age? : number; // 옵션으로 추가할 수 있따.
}
let person:Person =
{
name: "LJH",
age : 22
}
- 리스트 선언 ```ts let lotsOfPeople: Person[]; //오브젝트 리스트 선언이 가능하다.
4. union 선언 숫자 글자 둘다 쓰고 싶을때
```ts
let age : number | string;
- 함수 선언
1번 방식
//함수 선언 방법 1번 function printName (name: string){ console.log(name); } printName("piysh")
2번 방식
//함수 선언 방법 2번 이것 자주 쓰는 틋하다
let printName : (name: String) => never;
let printName : (name: String) => void;
- any 및 unkown 타입
let name : any; // 제한이 없는 함수 권장하지 않음 let personName: unknown; // 알지 못하는 경우
- 클래스 상속
interface person = { name: "piysh", age : 22, } interface Guy extends Person { Profession:string; }
연장하면서 쓸수 있다.
type X = {
a: string;
b: number;
};
type Y = X &{
c: string;
d: number;
};
// 에러 발생
let y:Y = {
c: 'efas'
d: 42,
};
타입과의 차이는 interface에서 연장하는데 문제가 있다.
참조
- 확장 프로그램 사용후 해당 명령어 수행시 기본적인 틀 만들어준다
rafce
- css 선언 참조 규칙 공부 필요
자료 출처
-
메인 강의 자료 https://www.youtube.com/watch?v=FJDVKeh7RJI&ab_channel=freeCodeCamp.org
-
강의자 유투버 https://www.youtube.com/@RoadsideCoder
-
typeScipt 설치 링크 https://create-react-app.dev/docs/adding-typescript/
-
typeScirpt 참조 https://www.typescriptlang.org/ko/
-
코드 출처 https://github.com/piyush-eon/react-typescript-taskify
-
자동완성 프로그램 추천 ES7 React/Redux/GraphQL/R
댓글남기기