我在一个文件中创建了一个类,将该类的多个实例添加到一个对象,然后将该对象导出到另一个文件。在第二个文件中,我可以访问构造函数中定义的所有内容,但方法是未定义的。我将所有代码从第一个文件移动到第二个文件,在这种情况下,方法已定义并正常工作。 该课程看起来像这样:
export class Example {
constructor() {
this.data = 123;
}
testMethod() {
console.log('test')
}
}
在第二个文件中,我导入了一个具有此类的多个实例的对象,我可以访问this.data但不能访问testMethod。
答案 0 :(得分:1)
试试这个
constructor() {
this.data = 123;
this.testMethod = this.testMethod.bind(this);
}
testMethod() {
console.log('test')
}
现在您可以访问此类的testMethod()。
如您所见,我刚刚创建了一个名为testMethod
的属性实例,它代表当前类中的testMethod()
。由于this
指针指的是封装类,因此您可以访问其成员。