출력 모듈 형식 결정
tsconfig에서 변환 결과가 require인지 import 유지인지 정합니다.
"module": "CommonJS"
TypeScript의 module 옵션은 import/export 문법을 어떤 JavaScript 모듈 형식으로 내보낼지 결정합니다.
tsconfig에서 변환 결과가 require인지 import 유지인지 정합니다.
"module": "CommonJS"
import/export가 require와 exports 형태로 변환되어 Node 실행에 맞춰집니다.
const fs = require("fs")
Vite나 Webpack 같은 도구가 이후 변환을 맡도록 최신 모듈 문법을 유지합니다.
"module": "ESNext"
JavaScript 패키지의 타입 정보를 @types 패키지로 가져와 자동완성과 검사를 받습니다.
@types/node
module 옵션은 문법 취향이 아니라 출력된 JavaScript를 누가 어떤 방식으로 실행할지에 맞춘 선택입니다.