react-redux将所有组件分成两大类:UI组件和容器组件,组件内需要操作数据可以通过mapStateToProps
mapDispatchToProps
完成。

react-redux不推荐我们在组件内部修改数据,数据存储在redux中,查数据通过mapStateToProps
,修改数据通过mapDispatchToProps
,像纯函数、纯组件那样,我们只要维护好props,那么我们写出来的组件就是纯组件,可维护性好。
这种开发模式很容易维护数据,也备受推崇,但我们开发项目时,有时不想要把数据都放在redux中。比如,我们引用了第三方的组件,不想把控制组件显示、隐藏这种数据的操作交给redux管理,我们可能只用一次这种组件,不想要再写action,reducer了。别忘了我们还有state,用setState操作组件的数据,并将其写入mapDispatchToProps
中,需要注意的是mapDispatchToProps
里this指向需要手动修改。


网友评论