📌  相关文章
📜  SyntaxError:无法在模块节点 js 之外使用导入语句 - Javascript (1)

📅  最后修改于: 2023-12-03 15:20:26.461000             🧑  作者: Mango

SyntaxError:无法在模块节点 js 之外使用导入语句 - Javascript

问题描述

当尝试在 Javascript 文件中使用导入语句时,可能会遇到以下错误:SyntaxError: Cannot use import statement outside a module.

问题原因

这是因为导入语句只能在模块文件中使用,而通过 <script> 标签导入的 Javascript 文件并不是模块文件。

解决方法

使用模块文件

如果您需要使用导入语句,则需要将 Javascript 文件转换为模块文件。可以通过以下两种方式将 Javascript 文件转换为模块文件。

  1. 将 Javascript 文件的文件扩展名更改为 .mjs,然后在文件中使用导入语句。
  2. 在 Javascript 文件中添加 type="module" 属性, 并使用导入语句。

使用浏览器原生模块

从ES6开始,浏览器已经支持原生的模块加载器,可以通过以下方式使用:

<script type="module" src="script.js"></script>

这样, script.js 文件中的所有模块加载语句将被认为是有效的。

结论

Javascript 中的导入语句只能在模块文件中使用。如果需要在普通的 Javascript 文件中使用导入语句,则需要将文件转换为模块文件或使用浏览器原生的模块加载器。