首頁 >web前端 >js教程 >將 milsymbol.js 匯入 ArcGIS JSAPI 時,為什麼會出現「未捕獲的語法錯誤:無法在模組外部使用導入語句」?

將 milsymbol.js 匯入 ArcGIS JSAPI 時,為什麼會出現「未捕獲的語法錯誤:無法在模組外部使用導入語句」?

Susan Sarandon
Susan Sarandon原創
2024-12-25 21:02:17412瀏覽

Why Am I Getting

導入ECMAScript 6 時「未捕獲的語法錯誤:無法在模組外部使用導入語句」

將milsymbol.js 庫合併到ArcGIS 中時JSAPI 項目在地圖上顯示軍事符號時,您可能會遇到類似「Uncaught SyntaxError: Cannot use import statements Outside a module”或“未捕獲的ReferenceError:未定義ms。 :無法在模組外部使用import 語句, " 表示模組上下文以外不支援導入語法。要解決此問題,您必須將 type="module" 新增至載入 milsymbol.js 的腳本元素。

出現第二個錯誤“Uncaught ReferenceError: ms is not Defined”,因為在下列情況下未定義 ms 變數使用導入語法。這是因為導入語句解析為模組的預設導出。在 milsymbol.js 中,預設會匯出為 { ms },因此您需要將其匯入。

修正錯誤

加type=" module」 到腳本元素milsymbol.js:

  1. 在主腳本中導入ms變數:
<script type="module" src="milsymbol-2.0.0/src/milsymbol.js"></script>
  1. 了解官方文件
import { ms } from 'milsymbol-2.0.0/src/milsymbol.js';
在官方空間幻覺文件中,您可能會注意到腳本元素沒有 type="module"。這是因為該文件針對使用 Webpack 或 Rollup 等捆綁器來捆綁程式碼的使用者。使用捆綁器時,不需要 type="module",因為捆綁器會自動處理模組解析。

結論

依照上述步驟,您可以解決將 ECMAScript 6 模組匯入 ArcGIS JSAPI 專案時遇到的錯誤。如果您需要混合和匹配 require 和 import 語法,請記住考慮使用捆綁器。

以上是將 milsymbol.js 匯入 ArcGIS JSAPI 時,為什麼會出現「未捕獲的語法錯誤:無法在模組外部使用導入語句」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn