如何可以将react中的state用redux正确地托管?

这个题目可能有点抽象,其实我是想问,对于react-redux项目中的state,不是所有的state都必须要交给redux托管吧?
是不是只有类似数据流的state才需要交给redux托管从而达到更好的控制与维护,比如说官网todo例子中的todo lists,还有一些全局的state,交于redux托管不用自己写那么多container了。
但是对于控制组件状态的state,交于组件自身管理更好。
也许是因为组里的项目太小了,很多控制组件状态state交给redux托管我怎么感觉有点繁琐呢?写了一堆redux中所谓的模板代码,但其实只是为了写而写。


最近刚开始研究redux,官网文档的todo例子和github上的todo例子有点不一样,前者所有的state都是redux维护,后者只有一部分,所以有点晕了。
有没有大神可以略微指点一二,小弟英语不是特别好,英文资料看得实在是头疼,中文资料比较有限。


临摹微笑
浏览 685回答 3
3回答

慕妹3146593

redux改变的是思考问题的方式。 数据改变 + 视图更新 二者分开,能做的很好,但混到一起,就变得一团糟。 redux保证数据流向的正确, 组件只考虑一件事,就一件事,接受props然后展示。 redux 也完全只用关心数据的正确性,由于不考虑组件, 数据层可以写测试用例来保证。 而且 应用随着应用的不断增大,reducer可以复用的逻辑一般也越来越多。 开发的时候也方便,大家提前定义好store的结构。 推荐看一个框架deku, 一个没有state的框架

叮当猫咪

组件自己的state(一般用于控制ui)确实组件自己管理就好了,没必要统统交给redux。所谓的presentational组件也是允许持有控制ui的state的。

哔哔one

尽可能交给redux,如果觉得代码分散可以把reducer和render()函数写在一起。
打开App,查看更多内容
随时随地看视频慕课网APP