[Error] Typescript process.env undefined 이슈
아무 세팅없이 process.env
를 사용하면 그 타입은 string|undefined
이다. 타입스크립트가 실제로 그 환경 변수가 있는지 알 수 없기 떄문이다. 그래서 타입에러가 가끔 발생한다.
1 | const dynamoDBClient = new DynamoDBClient({ |
이렇게 작성할 경우 DynmoDBClient
생성자 파라미터 옵션이 모두 string
으로 되어있기 때문에 타입에러가 발생한다.
TS2322: Type ‘string | undefined’ is not assignable to type ‘string’. Type ‘undefined’ is not assignable to type ‘string’.
해결하기 위해서는 definition 파일을 작성하여 해당 변수가 string
이라는 것을 타입 시스템에 알려주면 된다.
1 | declare namespace NodeJS { |
파일을 저장하면 이제 process.env
만 입력해도 자동완성이 가능하고 더 이상 에러가 발생하지 않는다.
이 블로그의 모든 글은 CC BY-NC-SA 4.0 라이선스를 따르며, 별도로 명시되지 않는 한 모든 권리를 보유합니다. 재배포 시 출처를 명시해 주세요: StudyYeong.