>웹 프론트엔드 >JS 튜토리얼 >milsymbol.js를 ArcGIS JSAPI로 가져올 때 '캐치되지 않은 구문 오류: 모듈 외부에서 import 문을 사용할 수 없습니다'가 나타나는 이유는 무엇입니까?

milsymbol.js를 ArcGIS JSAPI로 가져올 때 '캐치되지 않은 구문 오류: 모듈 외부에서 import 문을 사용할 수 없습니다'가 나타나는 이유는 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-25 21:02:17412검색

Why Am I Getting

ECMAScript 6을 가져올 때 "잡히지 않은 구문 오류: 모듈 외부에서 import 문을 사용할 수 없습니다."

milsymbol.js 라이브러리를 ArcGIS에 통합할 때 지도에 군사 기호를 표시하는 JSAPI 프로젝트에서 "Uncaught SyntaxError: 모듈 외부에서 import 문을 사용할 수 없습니다." 또는 "잡히지 않은 ReferenceError: ms가 정의되지 않았습니다."

오류 이해

첫 번째 오류, "Uncaught SyntaxError: Cannot use 모듈 외부의 import 문"은 가져오기 구문이 모듈 컨텍스트 외부에서 지원되지 않음을 나타냅니다. 이 문제를 해결하려면 milsymbol.js를 로드하는 스크립트 요소에 type="module"을 추가해야 합니다.

두 번째 오류인 "Uncaught ReferenceError: ms가 정의되지 않았습니다."는 다음과 같은 경우 ms 변수가 정의되지 않았기 때문에 발생합니다. 가져오기 구문을 사용합니다. 이는 import 문이 모듈의 기본 내보내기로 확인되기 때문입니다. milsymbol.js에서는 기본 내보내기가 { ms }이므로 그대로 가져와야 합니다.

오류 수정

  1. 유형 추가=" 모듈"을 스크립트 요소에 추가합니다. milsymbol.js:
  1. 메인 스크립트에서 ms 변수 가져오기:

공식 문서 이해하기

공식 Spatial Illusions 문서에서 다음 사항을 확인할 수 있습니다. 스크립트 요소에 type="module"이 없습니다. 이는 문서가 Webpack 또는 Rollup과 같은 번들러를 사용하여 코드를 번들링하는 사용자를 대상으로 하기 때문입니다. 번들러를 사용하는 경우 번들러가 자동으로 모듈 해결을 처리하므로 type="module"이 필요하지 않습니다.

결론

위 단계를 따르면 ECMAScript 6 모듈을 ArcGIS JSAPI 프로젝트로 가져올 때 발생한 오류를 해결할 수 있습니다. require 구문과 import 구문을 혼합하고 일치시켜야 하는 경우 번들러 사용을 고려하세요.

위 내용은 milsymbol.js를 ArcGIS JSAPI로 가져올 때 '캐치되지 않은 구문 오류: 모듈 외부에서 import 문을 사용할 수 없습니다'가 나타나는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.