다음은 네 가지 필드(모듈, 메인, 내보내기 및 [)가 모두 수행되는 이유에 대한 재미있고 흥미로운 설명입니다. &&&]import—package.json에 필요합니다:
네 가지 분야가 모두 필수적인 이유:메인: 클래식 문지기
모듈: 현대 트렌드세터
수출: 다재다능함의 대가
가져오기: ESM 관련 전문가
기준 | 기본 | 기준 치수 | 수출 | 수입 |
---|---|---|---|---|
목적 | CommonJS 모듈의 진입점 | ESM 모듈의 진입점 | 모듈 내보내기에 대한 세밀한 제어ESM 전용 패키지에 대한 진입점을 정의합니다. | |
소개됨 | 초기 Node.js 버전주로 번들러용 | Node.js 12 | Node.js 16 | |
대상 형식 | CommonJS | ESM(ES6 모듈) | ESM 및 CommonJS 모두 | ESM 전용 |
사용 사례 | require()를 사용하는 모듈의 경우import를 사용하는 모듈의 경우 | 여러 진입점을 노출하는 패키지의 경우 | ESM만 지원하는 패키지의 경우 | |
호환성 | CommonJS를 사용하여 Node.js에서 작동번들러, 현대적인 환경에서 작동 | ESM 및 CommonJS용 Node.js 12에서 작동 | ESM용 Node.js 16에서 작동 | |
유연성 | 1개의 진입점으로 제한됨ESM에 대한 하나의 진입점 | 다양한 형식에 대한 여러 진입점 | ESM에 대한 하나의 진입점 | |
현대 JS에서의 사용법 | 이전 버전과의 호환성을 위해 사용됨번들러의 ESM에 선호됨 | 다중 형식 패키지에 적합 | 최신 패키지를 위한 단순화된 ESM 입력 | |
상위 | 다른 사람이 있는 경우 가장 낮은 우선 순위내보내기가 없는 경우 번들러에 사용됩니다. | 기본 및 가져오기보다 우선순위가 가장 높습니다. | 내보내기가 없는 경우 사용됩니다. | |
파일 경로 처리 | 단일 파일단일 파일 | 여러 파일 및 형식을 내보낼 수 있습니다. | ESM용 단일 파일 | |
Node.js 지원 | 네이티브 CommonJS 지원Node.js에서는 기본적으로 지원되지 않습니다. | Node.js 12에서 지원됨 | Node.js 16에서 지원됨 |
exports 필드는 최신 JavaScript 개발에서 패키지가 구조화되고 액세스되는 방식을 향상시키는 강력한 기능입니다. 개발자가 ESM 및 CommonJS와 같은 다양한 모듈 형식에 대해 여러 진입점을 정의할 수 있도록 함으로써 호환성과 유연성이 향상됩니다.
수출 필드 사용의 주요 이점은 다음과 같습니다.
내보내기 필드는 패키지 관리를 현대화할 뿐만 아니라 패키지를 더욱 직관적이고 효율적으로 사용할 수 있도록 하여 개발자 경험을 크게 향상시킵니다. 고품질의 유지 관리 가능한 JavaScript 라이브러리 및 애플리케이션을 생성하려면 이 기능을 수용하는 것이 필수적입니다.
제목과 자막 제작에 도움을 주신 chatgpt님께 감사드립니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3