게시글

강좌27 - NodeJS - 한 달 전 등록

Node.js에서 import, export (ES2015 모듈) 쓰기

Node.js교과서 책이 출간되었습니다. 이 포스팅보다는 책이나 동영상 강좌를 보시는 것을 추천합니다.

Node.js는 전통적으로 commonjs 라는 자기네 방식의 독특한 모듈 시스템을 사용했습니다. require과 module.exports로 대표되는 방식이었죠. 하지만 브라우저에서는 import, export로 대표되는 모듈 시스템 을 채택했습니다. 자바스크립트 정식 스펙이기도 하고요. 타입스크립트도 자바스크립트를 따라가니까 import export를 채택했습니다.

Node.js도 이 흐름을 거스를 수는 없었습니다. 따라서 import, export를 도입했는데요.

과거에는 mjs라는 확장자를 썼어야 했습니다. app.js 대신에 app.mjs를 하는 식이죠. 그래야만 import, export를 인식했습니다. 이 때 export하는 파일이나 import 하는 파일 모두 mjs 확장자를 갖고 있어야 합니다.

하지만 이제는 package.json을 통해서도 설정할 수 있어서 확장자를 바꾸지 않아도 import, export를 쓸 수 있습니다.

package.json

{
   ...
   type: 'module',
   ...
}

이렇게 하면 해당 package.json이 있는 프로젝트에서는 모두 import와 export를 사용할 수 있게 됩니다.

브라우저와 노드에서 import, export를 지원함에 따라 점점 commonjs도 과거의 유산이 되어갈 것 같다는 생각이 드네요. 참고로 노드 버전이 많이 올라감에 따라 --experimental-modules 를 붙여서 실행하던 방식은 사라졌다고 보시면 됩니다.

조회수:
0
목록
투표로 게시글에 관해 피드백을 해주시면 게시글 수정 시 반영됩니다. 오류가 있다면 어떤 부분에 오류가 있는지도 알려주세요! 잘못된 정보가 퍼져나가지 않도록 도와주세요.
Copyright 2016- . 무단 전재 및 재배포 금지. 출처 표기 시 인용 가능.

댓글

아직 댓글이 없습니다.