"SyntaxError: 모듈 외부에서 import 문을 사용할 수 없습니다." 설명 및 해결됨
Node.js 프로젝트에서 "SyntaxError: Cannot 모듈 외부에서 import 문 사용"이라는 메시지는 ES 모듈로 인식되지 않는 파일에서 import 문을 사용하고 있음을 나타냅니다. 이 문제는 최신 버전의 Babel 또는 Node.js로 업그레이드할 때 흔히 발생합니다.
문제 이해
Babel 7에서 기본 동작은 파일을 해석하는 것입니다. .js 확장자를 CommonJS 모듈로 사용합니다. 반면 ES 모듈은 가장 가까운 package.json 파일에서 "type" 필드를 "module"로 설정하거나 .mjs 확장자를 사용하여 명시적으로 이름을 지정해야 합니다.
오류 해결하기
이 오류를 해결하는 데는 두 가지 옵션이 있습니다.
옵션 1: "type"을 다음으로 설정합니다. package.json의 "module"
package.json 파일에 다음 "type" 필드를 추가하세요.
// package.json { "type": "module" }
이렇게 하면 모든 .js 및 .mjs 파일이 다음과 같이 해석됩니다. ES 모듈이지만 .cjs 확장자를 사용하여 개별 파일을 여전히 CommonJS로 해석할 수 있습니다.
옵션 2: .mjs 확장자를 명시적으로 사용
ES 모듈로 처리되어야 하는 파일의 이름을 명시적으로 .mjs 확장자로 지정하세요. .js 확장자를 가진 다른 모든 파일은 기본적으로 CommonJS로 해석됩니다.
추가 고려 사항
위 내용은 Node.js에서 'SyntaxError: 모듈 외부에서 import 문을 사용할 수 없습니다'라는 메시지가 나타나는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!