我有三个类A,B和C这样:
class A{
id: number;
name: string;
//... more
items: B[];
}
class B{
id: number;
name: string;
//... more
otherItems: C[];
}
class C{
id: number;
name: string;
}
A,B和C有自己的服务来从http请求中通过id获取数据,但数据就像
class A{
id: number;
name: string;
...
items: number[]; //ids of B items
}
class B{
id: number;
name: string;
...
otherItems: number[]; //ids of C items
}
class C{
id: number;
name: string;
...
}
A的一些行为取决于C项,所以我有三个组件(AComponent
,BComponent
和CComponent
)和'id'输入,我在父组件上使用@ViewChildren,结合一些get / set函数来获取所需的信息,但是我不认为我会走最好的路
我想在开始之前做一个解析器以获得完整的A数据,但这是很多承诺的混乱。
您认为这是一个更好的解决方案吗?还有其他想法吗?
A的某些行为取决于C项
也许你应该为此工作。你将无法从C开始,因为你不知道C的ID。因此A需要依赖于自身,至少对于A的初始加载,它需要依赖于自身。
A的公共部分(取决于它自己)需要被隔离出来,只是为了完成A的加载。然后一旦加载C,你就可以再次调整A.
这是一个圆圈,所以我猜关键是打破圆圈形成一条线。