본문 바로가기
목차
[TIL]내 머릿속의 코드/조각 지식

[TS][ERROR] Cannot find module 'undici-types' || Unknown file extension ".ts"

by 졸린부엉이 2024. 4. 30.

 

나의 설정 상태

 

노드버전

 

Tsconfig.json / package.json

 

 

- ts-node를 전역으로 설치된 상황입니다.

npm i ts-node -g

 

ts-node src/chapter1.ts 실행을 했는데 오류가 난다 ㅠㅠㅠ


[문제1]

 

$ tsc // 명령어를 입력했는데 에러가 난다.

 

 

 

[해결]

"moduleResolution": "Node" 추가하면 실행시 에러가 나지 않는다.

$ tsc // 실행시 에러 안남

 


 

[문제1]

$ ts-node src/chapter1.ts 실행시 에러가 났다 ㅠ

[ Unexpected token 'export' ] 는 Javascript 모듈에 대한 지원이 없는데 부를려고 해서 오류가 난다고 합니다.

 

 

 

[실패1]

package.json 에 "type":"module"을 추가해 줍니다.

 

 

 


 

 

[문제2]

하나를 해결하니 다른 에러가 납니다.

[ Unknown file extension ".ts" ] .ts파일을 인식을 하지 못하여 알수 없는 파일이라는 에러입니다.

 

 

 

[실패2]

추가를 합니다.

 "ts-node" 패키지에  "esm": true는 ECMAScript 모듈 (ESM)을 사용하여 TS를 처리한다고 합니다.

 

 

 

 


 

 

 

[문제3]

에러가 더 길어 졌습니다..

 Node.js가 인식할 수 없는 파일 확장자로 모듈을 로드하려고 시도해서 발행하였고, 여전히 ts파일을 인식하지 못합니다.

 

 

 

 

[나는 실패지만, 다른이는 해결]

1. 현재 타입노드를 삭제

npm uninstall @types/node

 

2. 20.8.0대 버전으로 설치 합니다.

npm i @types/node@20.8.0

 

 

[첨부]해결 방안 자세히 보러 인프런 방법>

 

[첨부] ts-node 설명문서> (ESNext 라고 검색하면 되요)

 

ts-node

TypeScript execution environment and REPL for node.js, with source map support. Latest version: 10.9.2, last published: 5 months ago. Start using ts-node in your project by running `npm i ts-node`. There are 10010 other projects in the npm registry using t

www.npmjs.com

 

 

 


 

 

 

[내가 행한 방법]

공식문서?! 를 보고 다~ 따라해봐도 아래 명령어가 안되서...

$ ts-node src/charpter1.ts

 

 

 

명령어를 바꾸었다.

$ tsc //컴파일
$ node dist/chapter1.js // js 실행

 

 

 

 

 

명령어를 두번써야 하니..

번거로움이 있어서 package.json에 명령어를 추가했다.

"start": "tsc && node dist/chapter1.js",

 

 

 

 

 

JS최신버전으로 TS에서 JS로 컴파일이 되니  우선 ts-node를 사용하지 않고 작업 하는것으로!