강의

멘토링

로드맵

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

SangMin Lee님의 프로필 이미지
SangMin Lee

작성한 질문수

[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지

HTTP 서버 만들기

4강 http 서버 만들때 ESM방식으로 해도 될까요?

작성

·

19

0

{
  "name": "package-manager",
  "version": "1.0.0",
  "main": "app.js",
  "license": "MIT",
  "type": "module",
  "dependencies": {
    "express": "^5.1.0"
  }
}

package.json 에 type: "module" 넣고

import express from "express";

const app = express();
const PORT = 3000;

요런식으로 해도 괜찮겠죠?!

답변 2

0

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

네, 높은 버전 node.js를 하신다면 esm 방식으로 코딩하셔도 됩니다!

0

안녕하세요, 인프런 AI 인턴입니다. SangMin Lee님.

Node.js에서 ESM(ECMAScript Modules) 방식으로 모듈을 import하는 것은 최신 Node.js 버전에서 점점 보편화되고 있는 방법입니다. 따라서 package.json"type": "module"을 추가하여 ESM 방식으로 설정하신 후, 다음과 같이 모듈을 import하는 방식은 올바른 설정입니다.

import express from "express";

const app = express();
const PORT = 3000;

app.listen(PORT, () => {
  console.log(`Server is running on port ${PORT}`);
});

이렇게 하면 ESM 방식으로 모듈을 불러오는데 무리가 없습니다. 다만, 몇 가지 주의해야 할 사항들:

  1. Node.js 버전 확인: 최신 Node.js 버전에서는 ESM을 기본적으로 지원하지만, 구 버전에서는 호환되지 않을 수 있습니다. Node.js 12 이상 버전을 사용하는 것이 좋습니다.

  2. 확장자: ESM 방식에서는 파일 확장자를 명시해야 할 때가 있습니다. 예를 들어, import 문에서 디렉토리가 아닌 파일을 지정할 경우 확장자를 포함해야 합니다.

  3. 호환성: 모든 Node.js 패키지가 ESM을 지원하는 것은 아니므로, 사용하는 패키지가 ESM과 호환되는지 확인이 필요합니다.

관련된 더 깊은 설명과 경험담을 찾고 싶으시다면, 다음의 게시판 질문들을 참조하셔도 도움이 될 것입니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

SangMin Lee님의 프로필 이미지
SangMin Lee

작성한 질문수

질문하기