방명록
- [TYPE SCRIPT] 타입스크립트 @types 없는 모듈 에러 해결 방법2024년 01월 31일 18시 30분 40초에 업로드 된 글입니다.작성자: 코딩백구반응형
원인
- 라이브러리를 사용할 때, 항상 최신에 업데이트 된 라이브러리를 사용할 수 있으면 좋겠지만 불가피하게 오래된 라이브러리를 사용해야할 때도 있습니다. 이번에 개발할 때도 마침 이런 상황에 직면했었습니다.
- sveltekit 이나 next 에서 사용하려고 import 했더니 @types 용 모듈이 존재하지 않아서 발생하는 에러길래 처음에는 package.json 도 확인해보고, 다음으로 @types 모듈도 설치하려고 했지만 존재하지 않는 모듈이라고 설치가 불가능하길래 어떻게 해야하나,, 하고 있었습니다.
- 그러던 중 구글링을 통해서 같은 문제를 겪고 있던 사람들이 해결한 방법을 보았고, 저도 그 방법으로 해결할 수 있어서 기록을 남기려고 합니다.
해결 방법
- @types 모듈이 설치할 수 도 없고, 존재하지 않는다면 직접 만들어주면 해결됩니다.
1. tsconfig.json 에 "/types" 를 추가해줍니다.
- tsconfig.json 파일을 열게 되면 옵션들이 많이 있는데, 그 중에서 typeRoots 옵션에 "/types" 를 추가해줍니다.
(“./node_modules/@types" 는 반드시 있어야함으로 남겨둡니다.)
2. node_modules 와 같은 경로인 root 경로에 types 폴더를 만들어줍니다.
3. types 폴더 안에 사용할 모듈 이름으로 다시 폴더를 만들어주고, index.d.ts 파일을 생성합니다.
저는 timer 라이브러리를 사용하였어서 timer 라고 폴더를 만들었습니다.
4. index.d.ts 파일에 다음과 같이 선언해줍니다.
5. 마무리로, 해당 라이브러리를 사용할 코드에 다시 import 를 해주게 되면 에러가 사라지는 것을 볼 수 있습니다.
반응형'Error Handling' 카테고리의 다른 글
[Linux] systemctl 명령 에러 : System has not been booted with systemd as init system (PID 1). Can't operate. 해결 방법 (0) 2024.02.16 [WPF] json 파일 읽어오기 (0) 2024.02.01 [C#] WPF DispatcherTimer 으로 UI 업데이트 시, 버벅임 현상 (0) 2024.01.24 [WPF] Button Disable BackgroundColor 변경 에러 (0) 2024.01.19 [SVELTE] npm run dev 시 ip로 접속하기 (2) 2024.01.17 다음글이 없습니다.이전글이 없습니다.댓글