【发布时间】:2018-11-19 21:48:55
【问题描述】:
假设我们有一个包含比赛日程、球员、球队部分的应用。您将如何构建您的应用/功能状态?
我最初的想法是将这些分解为功能状态/模块:
app/
├── games/
│ ├── store/
│ └── games.module.ts
├── players/
│ ├── store/
│ └── players.module.ts
├── teams/
│ ├── store/
│ └── teams.module.ts
└── app.module.ts
每个功能负责每种数据类型(游戏、球员、球队)的 CRUD 方法。
但在比赛的情况下,您会想要列出哪些球队参加过比赛......而且您可能只存储了对比赛状态中每个球队的引用:
games: {
game1Id: {
home: team1Id,
away: team2Id,
}
...
}
与查看球队类似,您需要查看与球队相关联的球员...同样,可能只存储了对每个球队的 playerIds 的引用。
这些状态/数据中的每一个是否真的应该处于全局状态,而不是每个功能模块都可以从“自上而下”的方法中选择它们的功能状态?功能模块结构是否有意义?
或者“跨越”功能模块/状态是否可以接受?
或者还有其他我没有考虑过的方法吗?
【问题讨论】: