npm init을 통해 package.json을 생성하면 require 및 exports을 이용한 CommonJS을 이용하게 된다.
CommonJS 환경에서만 지원하는 환경변수들 (__dirname, __filename 등)이 있기도 하고, 기존 방식에 하자가 있어서 esmodule 방식이 나온 것은 아니기 때문에 굳이 esmodule 방식을 이용할 필요는 없으나, 최근 많이 이용하는 대부분의 프레임워크들이 esmodule 방식으로 사용되므로 프로젝트 내 일관성을 위해 채택하는 것도 좋다.
프로젝트 내에서 esmodule 방식을 이용하기 위해서는 package.json 내 type 설정을 변경해야 한다.
{
//some settings ...
"type":"module"
}
type은 "module" 및 "commonjs" 설정이 가능하다. 해당 설정이 명시되지 않으면 기본적으로 "commonjs" 로 지정되어 require 및 exports 구문을 이용하게 된다. "module" 설정은 프로젝트 내에서 esmodule 시스템을 이용한다고 지정한다.
'javascript > nodejs' 카테고리의 다른 글
서버가 static 파일을 보내는 방법 (0) | 2022.04.03 |
---|---|
[error] Failed to load module script: Expected a JavaScript module script but the server responded with a MIME type of "text/html" (0) | 2022.04.03 |
[npm] errno -4092 | EACCES 에러 (0) | 2022.01.30 |
Sequelize : 런타임 코드 생성을 활용하는 ORM~ (0) | 2022.01.24 |
[SQL] Object Relation Mapping (0) | 2022.01.24 |