【问题标题】:Cannot use import statement outside a module不能在模块外使用 import 语句
【发布时间】:2020-02-09 23:11:47
【问题描述】:

我正在尝试在纯 JavaScript 中使用类,所以我遇到了错误“Uncaught SyntaxError: Cannot use import statement outside a module”并且无法解决。

File1.js - 主文件

import example from "./file2";

var test = new example();

File2.js - 类文件

export default class example {
    constructor() {
        console.log("hello world");
    }
}

【问题讨论】:

  • 浏览器无法处理import,所以你需要使用像Babel这样的东西,这里的简短解释:stackoverflow.com/a/41662216/779600
  • 这个问题似乎是关于在浏览器之外使用import语句,所以它与链接问题不同。

标签: javascript html


【解决方案1】:

使用type="module"添加文件:

&lt;script src="file1.js" <b>type="module"</b> &gt;&lt;/script&gt;

【讨论】:

  • 我认为 OP 正在尝试使用纯 javascript 无浏览器。我正在使用 Node.Js,并且遇到与 OP 相同的问题。
  • "scripts": { "start": "babel-node server.js" } 应该可以工作
  • 你是什么意思“添加类型=“模块”的文件。如果你不使用脚本怎么办?
  • @PositiveGuy 有一些方法可以在script 标签之外执行 JavaScript 代码,但应该避免使用它们。如果您想了解 import 语句的所有细节,请参阅许多全面的 javascript 书籍之一,例如 explorejs.com/es6.html
  • 如果是基于浏览器的,在developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/…中有解释
猜你喜欢
  • 2020-01-27
  • 2020-02-11
  • 2020-12-11
  • 1970-01-01
  • 2021-08-06
  • 2020-04-29
相关资源
最近更新 更多