「SyntaxError: Cannot use import statements Outside a module」解釋與解決
在錯誤Node.js 專案中,錯誤「Synx在模組外部使用import 語句」表示在未被識別為ES模組的檔案中使用了 import 語句。升級到較新版本的 Babel 或 Node.js 時,通常會出現此問題。
了解問題
在 Babel 7 中,預設行為是使用以下命令解釋檔案.js 副檔名作為 CommonJS 模組。另一方面,ES 模組需要在最近的 package.json 檔案中將“type”欄位設為“module”,或使用 .mjs 副檔名進行明確命名。
解決錯誤
有兩個選項可以解決此錯誤:
選項1:將“type”設為“module”在package.json
將以下「type」欄位加入到您的package.json 檔案中:
// package.json { "type": "module" }
這會將所有 .js 和 .mjs 檔案解釋為 ES 模組,而單一檔案仍可透過使用 .cjs 副檔名被解釋為 CommonJS。
選項 2:明確使用.mjs 副檔名
明確命名應視為具有 .mjs 副檔名的 ES 模組的檔案。預設情況下,所有其他帶有 .js 副檔名的檔案將被解釋為 CommonJS。
其他注意事項
以上是為什麼我在 Node.js 中收到「語法錯誤:無法在模組外使用 import 語句」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!