error TS2792: Cannot find module

정민교·2023년 8월 10일
0

trouble shooting

목록 보기
2/2
import dotenv from 'dotenv'

dotenv를 import하려고 위와 같이 import 구문을 작성했는데 error TS2792 Cannot find module 에러가 발생

tsconfig.json에

"complierOptions": {
  "moduleResolution": "node"
}

이 옵션을 추가하면 해결된다.

📒moduleResolution 옵션

타입스크립트에서 moduleResolution옵션은 import 구문이 어떤 모듈을 참조할 지 결정하는 옵션이다.

import {a} from 'moduleA' 같이 import 구문은 a를 사용하기 위해 컴파일러는 a를 어디서 찾아야 할지 알아야 한다.

✔️Relative vs. Non-relative module imports

📌상대경로 import

  • import Entry from "./components/Entry";
  • import { DefaultHeaders } from "../constants/http";
  • import "/mod";

/ ./ ../ 이런 식으로 시작하는 import 구문이 상대경로 import다

상대경로 import는 import 구문을 사용하고 있는 파일 경로를 상대경로로 해석하고 ambient 모듈 선언으로 해석되지 않는다.

📌비-상대경로 import

그 외의 모든 import문이 non-relative import다.

non-relative import는 baseUrl을 상대경로로 해석하거나 path mapping을 사용한다.

외부 모듈을 import하기 위해서는 비 상대경로 import를 사용해야 한다.

profile
백엔드 개발자

0개의 댓글