我应该为每个数据库表使用单独的Flux存储吗?

时间:2015-09-14 18:59:49

标签: reactjs reactjs-flux flux

我正在创建一个应用程序,将用户的数据存储在多个数据库表中 - 信息,付款和预订(这是一个预订系统)。
在' info'表我存储用户信息,如电子邮件,姓名,电话等..., 在'付款'表格我存储了他的付款详细信息并预订了'我存储他的预订历史。

我的问题是 - 在Flux架构中表示此数据的最佳方式是什么?我是否需要3个不同的商店(针对每个桌子)或单个商店(让我们说#UserDesore')包含所有用户的数据?

基本上,我有一个仪表板组件,应该显示所有用户的数据。

如果我应该使用3种不同的商店解决方案,是否可以知道所有商店何时完成加载数据(因为每个商店都从数据库异步加载数据)?...

谢谢!

1 个答案:

答案 0 :(得分:0)

通常,较少的商店更好(更容易维护) 我使用的经验法则:如果商店的代码超过300行,那么你应该考虑在不同的商店中拆分 在两个解决方案(一个商店或三个商店)中,您将需要代码来管理表之间的依赖关系。代码只存在于不同的文件/商店中。

关于您提到的用户信息中心:避免在商店中存储冗余数据。所以如果你有例如用户预订总数,制作实时计算的getter函数。

最好不要让商店直接从数据库或服务器端加载数据,而是创建一个WebAPIUtil,在新数据进入时触发更新操作。请参阅官方'通量图。 offical flux diagram
商店可以有一个等待直到另一个商店更新的waitFor函数。