上节课我们介绍了异步action
,对中间件也做了一点介绍,我们知道异步action
需要通过中间件的支持才能正常使用。这节课我们来介绍一个库react-redux
。
回顾
在开始这节课的内容之前,我们对上节课的内容来做一个简单的回顾
- 异步操作不想在组件自身操作时交给异步
action
- 异步
action
中通常会调用同步action
- 异步
action
需要中间件redux-thunk
的支持
以上便是上节课的主要要点,接下来我们开始对这节课内容的学习。
react-redux
库
在开发中,很多开发者在使用react
的时候都喜欢在redux
中来做集中式的状态管理,然后react
官方团队发现了这一现象之后呢,就自己开发了一款react-redux
库,之前我们说redux
库和react
没有半毛钱关系,但是现在的react-redux
库可就不一样了,这个库是react
的一个扩展库。
但是我们现在不是已经成功使用上了redux
了嘛,我们还要react-redux
干什么呢?我们使用redux
的整个流程我们确实已经都打通了,我们也确实已经可以用redux
来对我们的react
组件来做集中化状态管理了。但是如果我们用react-redux
库的话,我们可以更加方便地在我们的react
项目中来使用我们的redux
。
我们先来看模型图。首先react-redux
库把组件分为两类,一类是UI
组件,另一类叫容器组件。我们的所有的UI
组件都是容器组件的子组件。而容器组件才是真正和redux
打交道的组件,但是UI
组件不可以使用redux
,只是对页面来做呈现应的。
但是如果UI
组件中要获取redux
中存放的state
,或者修改redux
中存放的state
的话都要通过容器组件,容器组件会通过props
来把UI
组件所需要的state
和修改state
的方法都传给UI
组件
总结
react-redux
库把组件分为两类UI
组件- 容器组件
- 只有容器组件可以直接操作
redux
UI
组件必须通过容器组件来操作redux
UI
组件所需要的redux
中的状态以及操作状态的方法都要由容器组件通过props
来交互
Copyright statement:The articles of this site are all original if there is no special explanation, indicate the source please when you reprint.
Link of this article:https://work.lynchow.com/article/understand_react_redux/