본문 바로가기

TypeScript

[Node.js 교과서] 17-2. 라이브러리 코드 타이핑하기 (passport, squalize)

Passport와 squalize 모듈에 대해서 JS 스크립트를 TS로 컨버팅하는 과정에 대한 글

 

 

 

import 및 exports 코드 js (왼쪽) / ts (오른쪽)

 

 

Unknown은 타입스크립트가 Type을 몰라 추론을 못하는 상황이므로 따로 명시해 주자

 

 

 

그리고 아래 처럼 process.env에 정의된 상수들은 타입스크립트가 어떤 타입인지 모르므로 

! 느낌표를 붙여주자

느낌표는 사용자가 타입을 보증한다는 뜻 (아래 코드에서는 왼쪽 그림의 Type중 하나로 보증한다는 ) 

 

 

 

아래 그림처럼 KakaoStrategy 생성자를 생성할 때, StrategyOption 타입으로 생성해야해서 매개변수에 ?을 제외한 clientID,   clientSecret, callbackURL이 있어야하는데

 

아래 그림처럼  clientSecret 변수 이름에 ? 을 붙이면

해당 변수의 타입은 있어도 Ok 없어도 Ok 라는