如何在 NGXS 中为嵌套数组规范化和建模状态?

How to normalize and model state in NGXS for nested arrays?

我在尝试更新深度嵌套数组对象的状态时碰壁了,通过研究它我需要规范化我的状态。

我正在使用的数据结构如下:

   sportTypes: SportType[
  sportTypeObj{
     leagues: League[
        leagueObj{
              teams: Team[
                 teamObj{} <== this array needs updating
                ]
           }
      ]
   }
]

所以基本上 SportType 对象有一个 League[] 类型的数组 属性,每个联赛对象都有一个 Teams[] 类型的数组 属性。我需要更新特定联赛的团队数组。我不太确定如何构造我的 SportTypeStateModel 以反映此数据结构。

这是我之前的:

`export interface SportTypeStateModel {
  sports: SportType[];
  loading: boolean;
  error?: any | null;
}`

但是有了这个,就没有简单的方法来更新 Teams 数组。

另一种方法是拥有 3(或 4)个实体存储。但这并没有像预期的那样容易。

  • SportTypeStateModel : 里面有 { sportTypeIds: string[] }

  • SportType : 里面有 { leagueIds: string[] }

  • League : with inside { team: Team[] }