0

我有这样的三个 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 有自己的服务来通过 id 从 http 请求中获取数据,但数据来自

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 项,因此我有三个带有“id”输入的组件(和) AComponent,并且我在父组件上使用 @ViewChildren,并结合了一些 get/set 函数来获取所需的信息,但我没有不要以为我会走最好的路BComponentCComponent

我想在开始之前做一个解析器来获取完整的 A 数据,但它有这么多的承诺。

您认为哪种方式是更好的解决方案?还有什么想法吗?

4

1 回答 1

0

A 的某些行为取决于 C 项

也许你应该为此努力。您将无法从 C 开始,因为您不知道从 C 开始的 id。因此A需要依赖自己,至少对于A的初始加载,它需要依赖自己。

A的公共部分(取决于自己)需要隔离出来,只是为了完成A的加载。然后一旦C加载完毕,您可以再次调整A。

这是一个圆圈,所以我猜关键是要打破圆圈形成一条线。

于 2018-03-06T01:39:18.660 回答