인프런 커뮤니티 질문&답변

Roy13님의 프로필 이미지
Roy13

작성한 질문수

한 입 크기로 잘라먹는 타입스크립트(TypeScript)

Hello TS World!

설치 오류 해결책을 모르겠습니다. (설치관련)undici-types

해결된 질문

작성

·

1.9K

1

전부다 설치완료 후 tsc를 입력 할 경우 이런 에러가 나옵니다.

 npm i @types/node 설치후의 이미지 올리는데(이전 과 다르게 설치됨) 이전에는 설치 잘 됐었는데 이번에 재설치를 해도 문제가 계속 발생하고 있습니다. 

스크린샷 2023-10-21 01.39.34.png스크린샷 2023-10-21 01.39.50.png

답변 5

11

해당 에러를 저도 만났는데, types/node npm 에 들어가보니 특정버전이후로 undici-types 에 디펜던시가 생긴것같아요.
https://www.npmjs.com/package/@types/node
node_modules 삭제하신 후
npm i @types/node@20.8.0
사용하셔서 해당 버전으로 types/node 설치하시면 에러 안날 거에요!

Roy13님의 프로필 이미지
Roy13
질문자

답변 감사드립니다. 확실히 노드모듈 지우고 명령어 입력하니 undici-types가 사라진 것이 나왔습니다.

0

안녕하세요 혹시 제 vscode에서는 한글번역으로 해석이 나오지 않는데 혹시 해결할 수 있는 방법이 있을까요...

0

저도 같은에러 발생했습니다

tsconfig.json -> compilerOptions -> "moduleResolution" :"Node" 를 추가 후 해결되었는데 특별히 문제가 없는건지 궁금합니다

node version: 20.10.0

@types/node version: 20.10.6

image

이정환 Winterlood님의 프로필 이미지
이정환 Winterlood
지식공유자

안녕하세요 이정환입니다.

이렇게 진행하셔도 문제는 없습니다. 다만 아래와 같이 해결하시는 것을 더 권장드립니다.

  • node 버전 20대로 업그레이드

  • @types/node 버전 20대로 업그레이드

  • tsc 대신 tsx 설치 후 실행

tsx에 대한 이야기는 강의 노트에 작성되어 있습니다.

이렇게 하셨는데도 문제가 발생하신다면 알려주세요! 바로 살펴보겠습니다.

감사합니다 이정환 드림

0

이정환 Winterlood님의 프로필 이미지
이정환 Winterlood
지식공유자

안녕하세요 이정환입니다.

Node.js나 TypeScript 버전 이슈가 있는 듯 합니다.

그게 아니라면 tsconfig.json의 설정이 잘못 된 것 같은데요

현재 Node.js 버전을 확인해보시기 바랍니다

버전 확인 방법은 터미널에 "node -v"를 입력하시면 됩니다.

설치된 버전이 18 혹은 20 버전이지 않으면 안정적인 버전이 아니므로 의도치 않은 동작이 발생할 수 있습니다.

다음으로는 현재 VsCode에서 사용중인 TS 버전을 확인해보시기 바랍니다.

TS 버전을 확인하는 방법은 Ctrl + Shift + P (Command + Shift + P)를 누르신 다음 나타나는 검색창에 다음 그림처럼 "TypeScript 버전 선택"이라는 옵션을 선택하시면 됩니다.

image그럼 다음 그림처럼 현재 VsCode가 사용중인 버전이 나타나는데요 이때 TypeScript 버전이 5.x.x 대 버전인지 확인해보시기 바랍니다.

image만약 그래도 문제가 해결되지 않는다면

현재 프로젝트의 코드를 깃허브나 코드샌드박스로 묶어 저에게 링크로 보내주시면 직접 살펴보겠습니다

감사합니다.

Roy13님의 프로필 이미지
Roy13
질문자

스크린샷 2023-10-30 00.26.52.pngLinklink

안녕하세요 완벽히 해결이 안되어서 답장드립니다.

초반에 sudo npm install ts-node -g로 설치 하고

ts-node src/index.ts 로 실행할때는 출력이 됐는데요 그 다음 강의에 tsconfig.json 옵션들 입력해가면서 마지막에 ts-node src/index.ts실행에러가 나서요

님이 주신 답변에 따라 사전에 노드js가 버전문제인거 같아 16에서 20버전으로 (생각보다 어려워서 덮어쓰기 인스톨을 감행)결국 v20.9.0이 되었구요npm 10.1.0 이 됐습니다. ts는 5버전입니다.

처음 타입스크립트 설정 시 조금 미심쩍은 것은 npm i @types/node가 역시 undici-types가 같이 설치되는 관계로 노드 모듈만 지우고 npm i @types/node@20.8.0로 설치해 해결을 봤습니다.이 명령어로는

HelloTS World강의해서 문제없이 실행됐습니다.

그 다음강의 타입스크립트 컴파일러옵션 에서 결국은 에러만 나왔습니다. 맞게 깃헙에 올리는지 모르겠는데 확인 부탁 드립니다.

0

안녕하세요 Roy13 님, 인프런 AI 인턴이에요.
설치 관련 오류에 대해서는 명확한 원인을 파악하기 어려울 수 있습니다. 그러나 오류 메시지를 확인해보니 undici-types와 관련된 문제로 보입니다.

일반적인 오류 해결 방법으로는 다음과 같은 절차를 시도해볼 수 있습니다:
1. package.json 파일을 열어 @types/node의 버전 확인 또는 dependenciesdevDependenciesundici-types와 충돌하는 패키지가 있는지 확인해보세요.
2. 해당 프로젝트의 의존성을 모두 삭제한 후, 다시 설치해보세요. (npm install 또는 yarn install 명령어를 사용하세요.)
3. package-lock.json 파일도 함께 삭제한 후, 다시 설치를 시도해보세요.
4. 만약 필요하다면 Node.js의 버전을 업데이트하거나 다운그레이드해보세요.

만약 위의 절차를 시도해도 문제가 해결되지 않는다면, 해당 오류에 대해 더 자세한 정보를 알아야 정확한 도움을 드릴 수 있습니다. 구체적인 에러 메시지와 함께 더 많은 정보를 제공해주시면 도움이 될 것입니다. 감사합니다!

Roy13님의 프로필 이미지
Roy13

작성한 질문수

질문하기