在我的一个打字稿文件中,我有两个类,每个类都有一个构造函数。然后在每个类中,它需要获得彼此的类的实例。我的代码如下:
namespace pxsim {
export class Board extends pxsim.BaseBoard {
public tMap: trafficMap = new trafficMap();
public x: number;
public y: number;
constructor(){
this.y = 10;
this.x = this.tMap.x;
}
}
export class trafficMap{
public b: Board = new Board();
public y: number;
public x: number;
constructor(){
this.x = 20;
this.y = this.b.y;
}
}
}
当我在浏览器中运行它时,控制台显示错误"trafficMap is not a constructor"
。我认为这是因为在Board
类中,当它尝试创建trafficMap
的实例时,由于代码尚未到达trafficMap
类,它还没有加载它的内容。因此,我认为我需要像异步构造函数这样的东西。如果有任何错误,请纠正我。
答案 0 :(得分:0)
因此,我认为我需要类似异步构造函数的东西。如果有任何错误,请纠正我。
没有异步构造函数。
当你有两个相互依赖的课程时,你真正拥有的是三个课程。两个独立的(你已经拥有)和一个orchestrator(你们两个之间真正的耦合)。