2016-12-13 67 views
5

我正在开发一个项目,该项目将一个端点的大量数据导入到一个reducer中。我想在ES6 Classes中转换这些数据,所以我可以给他们提供帮助方法,提供数据之间的关系,而不必一直使用纯JavaScript对象。另外,为了获得数据之间的关系,我必须进行n平方计算,这会减慢前端的速度。使用带Redux的ES6类

下面是我看到的选项:

1)创建一个与终极版商店连接选择。这个选择器可以从reducer获取数据并将其转换为我定义的多个ES6类。如果reducer获取不同的新数据,那么选择器将重新创建ES6类实例。

2)https://github.com/tommikaikkonen/redux-orm 这似乎也很棒。

3)在数据集上创建多个选择器,以便计算数据集中的指定关系,所以我可以在每次我想获得一个关系时调用这个选择器,否则这个关系会是一个n平方计算得到。

我的问题是我应该采取哪三种路线?除了这3个之外还有其他选择吗?或者人们只使用前端的javascript对象,而不使用ES6类。


更新:

两个月后,我还在生产中使用终极版-ORM,它太棒了!强烈推荐。

+3

你的问题是? – starcorn

+0

我已更新它明确指出问题。 – NateW

回答

7

完全可以用“简单”的功能和选择器来处理所有的操作。有info on normalization in the Redux FAQ,我有一些关于selectors and normalization的文章,作为我的React/Redux links list的一部分。

这就是说,我是巨大的 Redux-ORM的支持者。它是帮助管理Redux商店中的规范化/关系数据的绝佳工具。我使用它来规范化嵌套数据,查询数据并不断更新数据。

我的Practical Redux博客文章系列包括两篇专门讨论Redux-ORM的文章:Redux-ORM BasicsRedux-ORM Concepts and Techniques。最新的帖子,Practical Redux Part 5: Loading and Displaying Data,也显示了Redux-ORM的行动。

Redux-ORM的作者Tommi Kaikkonen实际上刚推出了一个测试版a major update to Redux-ORM that improves the API and behavior,我很期待与之一起玩。

我绝对推荐它!

+1

很高兴知道人们喜欢Redux-ORM!感谢马克的建议! – NateW