我有
时如何处理打字稿Cat
,其中有一个owner: Person
Person
的pet: Cat
import {Person} from './person'
export class Cat {
owner: Person
constructor(){
this.owner = new Person()
}
}
import {Cat} from './cat'
export class Person {
pet: Cat
constructor(){
this.pet = new Cat()
}
}
希望除了解决方法外,还有一个很好的解决方案和模式,例如:
不要说打字稿编译器没有考虑这种情况:$
答案 0 :(得分:0)
我发现我的错误是在Cat
类中创建Person
实例,在Person
类中创建Cat
实例
因此,要避免这种明显是由创建
引起的冗余cat => which creates a Person => which creates a Cat => which creates a Person => ad eternam...
我移动了Cat and Person的实例创建
或将其传递给构造函数也可以解决问题
构造函数(所有者:人){ this.owner = anOwner }
请参见stackblitz示例