加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

react-redux的基本用法

发布时间:2020-12-15 20:24:55 所属栏目:百科 来源:网络整理
导读:redux仅仅是一个状态管理的库,不能直接用于react,react-redux是redux作者封装的用于连接redux和react的库。 react-redux基本概念 1. UI组件 1. 只负责UI显示的组件,不包含业务逻辑 2. 没有状态 3. 所有数据都由(props)提供 4. 不使用任何Redux的API 2. 容

redux仅仅是一个状态管理的库,不能直接用于react,react-redux是redux作者封装的用于连接redux和react的库。

react-redux基本概念

1. UI组件

1. 只负责UI显示的组件,不包含业务逻辑
2. 没有状态
3. 所有数据都由(props)提供
4. 不使用任何Redux的API

2. 容器组件

1. 只负责管理数据和业务逻辑,不负责UI呈现
2. 有自己的状态
3. 使用Redux的API

3. 生成容器组件

react-redux提供了一些方法,来从UI组件生成容器组件,完整结构如下:

const VisibleTodoList = connect(
    mapStateToProps,mapDispatchToProps
)(TodoList)

其中的

connect 是连接组件
mapStateToProps 是将状态映射为UI组件的props
mapDispatchToProps 是将dispatch(action)映射为一个具名方法,传入props,供UI组件调用

4. 容器组件如何接收全局的State

react-redux提供了<Provider>组件来解决任意层级的容器组件接收State的问题。<Provider>的本质
是使用了React的context属性,来将全局的State传递到任意层级的子组件。<Provider>的具体用法如下:

render(
    <Provider store={store}>
        <App />
    </Provider>,document.getElementById(‘root‘)
)    

<Provider>配合React-Router的用法

const Root = ({ store }) => (
    <Provider store={store}>
        <Router>
            <Route path="/" component={App} />
        </Router>
    </Provider>
)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读