해결된 질문
작성
·
1.1K
0
해당강의 따라하던중
compilerOptions 에서 target 을 ES5로 했을때는 아무오류 없이 js 파일도 잘 나오는데요, ESNext로 하고 컴파일하면 오류가 나와요. 하지만 동일하게 js파일은 생성이 되요.
node_modules/@types/node/globals.d.ts:396:25 - error TS2792: Cannot find module 'undici-types'. Did you mean to set the 'moduleResolution' option to 'nodenext', or to add aliases to the 'paths' option?
396 : typeof import("undici-types").FormData;
제가 뭘 따로 설치하거나 하진 않고 강의만 따라했다고 생각했는데 한번만 봐주세요!
답변 4
1
안녕하세요 이정환입니다,.
아이코 !! 보내셨었군요 제가 미처 확인을 못했습니다 (단독 터미널 사진으로 보내주실거라 생각했나봐요 죄송해요)
우선 해당 오류는 @types/node 설치시 함께 설치되는 undici-types 라는 라이브러리의 타입 검사 도중 발생하는 것으로 보입니다.
따라서 다음 옵션을 tsconfig.json의 copmilerOptions 내부에 추가해주셔야 합니다.
"compilerOptions": {
// (...)
"skipLibCheck": true,
},
위 옵션은 타입 정의 파일(.d.ts 확장자를 갖는 파일을 의미합니다 우리 수업에서는 나중에 배웁니다)의 타입 검사를 생략하는 옵션입니다. 보통 타입 정의 파일은 라이브러리에서 사용하는데 가끔 라이브러리의 타입 정의 파일에서 타입 오류가 발생하는 일이 발생할 수 있습니다. 따라서 해당 옵션을 true로 설정하셔서 불 필요한 타입 정의 파일의 타입 검사를 생략하도록 설정해주시기 바랍니다.
0
안녕하세요 이정환입니다.
늦게 보내주셔도 괜찮습니다 😊
우선 현재 Node.js 버전을 확인 해 보셔야 할 것 같습니다.
Node.js 버전은 터미널에 node -v 라고 입력하시면 출력됩니다
이 버전이 20버전 이하라면 제거하시고 다시 20버전으로 설치하여 진행하셔야 할 것 같습니다.
감사합니다.
0
안녕하세요 이정환입니다.
혹시 Node.js 20 버전을 사용하고 계신지 체크 해 보실 수 있을까요?
@types/node가 20버전으로 설치되었다면
Node.js도 20버전으로 설치되어 있어야 정상 작동하는것으로 확인되었습니다.
확인 부탁드립니다!
(친절한 캡쳐와 상세한 설명 감사합니다 🙇♂)
답이 너무많이 늦어버렸네요 죄송합니다
위에사진은 오류메시지 전문이구요
아래사진은 오류난 파일에 오류난 부분이예요
버전은 맞게 되어있는것같은데 혹시모르니 한번만 확인부탁드립니다!
오류가 너무많아 어떤걸 복사해서 올려야할지 잘 모르겠어요 하하;;
node_modules/@types/node/globals.d.ts:6:76 - error TS2792: Cannot find module 'undici-types'. Did you mean to set the 'moduleResolution' option to 'nodenext', or to add aliases to the 'paths' option?
6 type _Request = typeof globalThis extends { onmessage: any } ? {} : import("undici-types").Request;
node_modules/@types/node/globals.d.ts:11:14 - error TS2792: Cannot find module 'undici-types'. Did you mean to set the 'moduleResolution' option to 'nodenext', or to add aliases to the 'paths' option?
11 : import("undici-types").RequestInit;
node_modules/@types/node/globals.d.ts:380:25 - error TS2792: Cannot find module 'undici-types'. Did you mean to set the 'moduleResolution' option to 'nodenext', or to add aliases to the 'paths' option?
380 : typeof import("undici-types").Request;
0
계속 따라하다가 "module"도 "CommonJS"로 설정해놓고 tsc 컴파일하면 오류없이 해당설정으로 js 파일 생성되는데 다시 모듈도 "ESNext" 로 설정후 재컴파일하면 동일한 오류들이 뜨네요. 하지만 컴파일된 js파일은 잘 생성되요
추가로 다른 분들께서도 동일한 불편 사항을 겪으실 것 같아
아래 그림처럼 바로 오류 대응법 자료를 확인하실 수 있도록 올려두었습니다.
"hna206"님이 올려주신 친절한 질문 덕분에 확인할 수 있었습니다. 정말 감사합니다!!