node 실행중 발생한 에러해결- CommonJS, module

김하은·2023년 6월 9일
0

날짜를 사용하기 편하게 함수로 만들어 필요한 모양으로 import하여 사용하려 export하여 만들어 두었다.
이전에도 사용했던 파일이라 import가 안될리가 없는데 이상하게 nodemon index.js가 되지 않았고 혹시나 nodemon에서만 문제가 생기나 싶어 node로도 실행을 해보았으나 여전히 같은 에러가 발생했다.

에러 로그를 확인하자면 export하고있는데 CommonJS방식이라 그게 안된다는 것이었는데 정말 이상해 로그도 다시 검색해보고, 살펴보고, chatGPT에 물어보았다.

해당 export한 파일 확장자를 .mjs로 바꾸니 해결되었다

이전까지는 문제가 없었는데, 이메일 인증 관련을 도와주는 라이브러리 또는 문자인증관련 라이브러리를 설치하고 나서 생긴 문제이니 아무래도 둘중 하나가 CommonJS방식을 사용하여 충돌이 난 것 같았다. package.json에도 type:"module"이라고 추가를 해주었는데도 불구하고 해당 export를 못읽어 확장자를 모듈을 사용하는 js라는 의미의
.mjs로 바꾸어 주니 해결된 것이다.

대체 왜 못읽었던것인지 모르겠다.
아마 문자인증관련 라이브러리가 CommonJS방식이었을 것 같다. docs상 require만 나와있었으니 그것때문에 충돌이 났나?

기본적으로 .js는 CommonJS에서 사용하는 확장자라고 한다.
이렇게 또하나의 지식을 알아간다.

0개의 댓글