ReferenceError: [...] is not defined

ReferenceError: [...] is not defined

我正在尝试使用另一个 JS 文件中的 JS 函数,但出现此错误:

ReferenceError: Lanceur is not defined

Lanceur 是我在第二个文件中定义的对象。 我有一个构造函数:

public class Lanceur { 
  constructor(angleAiguille) {
    this.angleAiguille = angleAiguille;
  } // And functions .....

我的第一个文件中有这一行:lanceur = new Lanceur(0);

例如,我将我的文件称为 HTML 文件 <script src="js/canvas.js" type="text/javascript"></script>

您需要先创建 class,然后才能创建它的实例。你也不需要关键字 public 因为浏览器目前不支持它 (除非你通过 Babel 或类似的东西编译它,但这从你的 post).

在您的第一个文件中包含构成 class 的代码,我添加了一个方法作为示例。

class Lanceur { 
  constructor(angleAiguille) {
    this.angleAiguille = angleAiguille;
  }

  someMethod() { 
   console.log('Firing') 
  }
}

然后您可以在第二个文件中像这样创建它的实例并调用它的方法。

const instance = new Lanceur;


// Calling a method...
instance.someMethod();

您可以详细了解 JavaScript class 构造函数 here