在Angular中组织NgRx实体

时间:2018-11-10 17:15:49

标签: angular redux ngrx ngrx-store ngrx-effects

在弄清楚如何按照NgRx模式连接我的应用程序时遇到了一些麻烦。

假设我要制作一个体育应用,用户可以在其中将自己喜欢的球队添加到仪表板上,并接收每个球队的实时统计信息。假设他们每个联赛只有一支球队。该应用程序将使用一些外部API来获取他们添加的团队中的数据。

我的问题是,如何组织NgRx,以便正确存储所有状态?

我想我将从一个像这样的实体开始

export class User {
    username: string;
    password?: string;
    token?: string;

    nflTeamAdded?: boolean;
    nflTeam?: string;
    nflTeamStats?: nflStats;

    mlbTeamAdded?: boolean;
    mlbTeam?: string;
    mlbTeamStats?: mlbStats;

    nbaTeamAdded?: boolean;
    nbaTeam?: string;
    nbaTeamStats?: nbaStats;

   // each of the stats objects would be tailored to what they receive from an third-party api
   // that would send that information
}

但是我如何使用NgRx将其分为单独的动作,还原器,效果和选择器?我应该为每个联赛创建一个文件夹,并将每个联赛球队视为一个实体吗?我对文件夹结构总是很害怕。

最终,我会将用户名,密码,联赛布尔人和联赛球队存储在数据库中,但是现在我主要只关心NgRx组织。任何建议都将不胜感激。

0 个答案:

没有答案