패키지의 타입선언
- typescript에서 javascript의 모듈을 가져와 사용하려면 모듈의 타입을 선언해주어야 한다.
- 모듈의 타입을 선언해주는 파일을 흔히 .d.ts 파일이라고 한다.
- .d.ts 파일을 사용하는 방법에는 2가지가 있다.
1. dts 파일을 만들 때 패키지의 이름과 일치하도록 파일의 이름을 지정해주는 것.
ex) lodash.d.ts
2. 만약 파일의 이름이 일치하지 않으면 아래처럼 삼중 slash 지시자의 참조 태그를 통해서 경로를 따로 명시해줄 수도 있다. 자바스크립트로 변환했을 때는 주석처리가 되기 때문에 큰 영향을 미치지 않는다.
/// <reference path="./lodash.d.ts"/>
- 파일명에서 d는 declare를 의미한다.
- .d.ts 파일에는 구현과 관련된 로직이 들어있는 것이 아니라 타입에 대한 내용만 들어 있다고 생각하면 된다.
- 조금이라도 유명한 javascript 패키지들은 definitely typed가 있거나 패키지 자체의 타입선언이 되어 있을 것이기 때문에 직접 만들지 않아도 될 것이다. .d.ts 파일을 직접 만들어 관리하는 경우는 많지 않기 때문에 너무 어렵게 생각할 필요는 없을 것 같다.
- definitely typed에는 전 세계 개발자들이 기여해서 만들어 놓은 타입 파일이 있다. 여기서 가져와 쓰면 편하다.
- 이를테면, lodash 패키지의 경우 아래 명령어를 이용하면 된다.
npm i @types/lodash -D
'TYPESCRIPT' 카테고리의 다른 글
[Typescript] 타입스크립트 구성 옵션 (tsconfig.json) (0) | 2023.12.12 |
---|---|
[Typescript] 타입 내보내기 (export, import) (0) | 2023.12.12 |
[Typescript] 제네릭 (Generic) (0) | 2023.12.12 |
[Typescript] 클래스와 접근제어자 (0) | 2023.12.12 |
[Typescript] 함수 오버로딩 (Overloading) (0) | 2023.12.12 |
패키지의 타입선언
- typescript에서 javascript의 모듈을 가져와 사용하려면 모듈의 타입을 선언해주어야 한다.
- 모듈의 타입을 선언해주는 파일을 흔히 .d.ts 파일이라고 한다.
- .d.ts 파일을 사용하는 방법에는 2가지가 있다.
1. dts 파일을 만들 때 패키지의 이름과 일치하도록 파일의 이름을 지정해주는 것.
ex) lodash.d.ts
2. 만약 파일의 이름이 일치하지 않으면 아래처럼 삼중 slash 지시자의 참조 태그를 통해서 경로를 따로 명시해줄 수도 있다. 자바스크립트로 변환했을 때는 주석처리가 되기 때문에 큰 영향을 미치지 않는다.
/// <reference path="./lodash.d.ts"/>
- 파일명에서 d는 declare를 의미한다.
- .d.ts 파일에는 구현과 관련된 로직이 들어있는 것이 아니라 타입에 대한 내용만 들어 있다고 생각하면 된다.
- 조금이라도 유명한 javascript 패키지들은 definitely typed가 있거나 패키지 자체의 타입선언이 되어 있을 것이기 때문에 직접 만들지 않아도 될 것이다. .d.ts 파일을 직접 만들어 관리하는 경우는 많지 않기 때문에 너무 어렵게 생각할 필요는 없을 것 같다.
- definitely typed에는 전 세계 개발자들이 기여해서 만들어 놓은 타입 파일이 있다. 여기서 가져와 쓰면 편하다.
- 이를테면, lodash 패키지의 경우 아래 명령어를 이용하면 된다.
npm i @types/lodash -D
'TYPESCRIPT' 카테고리의 다른 글
[Typescript] 타입스크립트 구성 옵션 (tsconfig.json) (0) | 2023.12.12 |
---|---|
[Typescript] 타입 내보내기 (export, import) (0) | 2023.12.12 |
[Typescript] 제네릭 (Generic) (0) | 2023.12.12 |
[Typescript] 클래스와 접근제어자 (0) | 2023.12.12 |
[Typescript] 함수 오버로딩 (Overloading) (0) | 2023.12.12 |