React-redux库的使用

为什么要使用React-redux

  1. 每个组件都需要单独导入store

  2. 在根组件上的写法不友好

什么是react-redux

是 Redux 官方提供的 React 绑定库

  1. React 和 Redux 是两个独立的库,两者之间职责独立。

  2. Redux可以和其他的js库,框架一起使用,而并不专门用于react。

  3. 为了实现在 React 中使用 Redux 进行状态管理 ,就需要一种机制,将这两个独立的库关联在一起。这时候就用到 React-Redux 这个绑定库了

  4. 作用: 为 React 接入 Redux,实现在 React 中使用 Redux 进行状态管理。

react-redux-基本使用

1.步骤

  1. 安装 npm i react-redux

  2. 使用

    1. 按上一篇文章的要求,创建好store, reducer,action等等

    2. 从react-redux中引入 provider, useSelector, useDispatch来 操作 redux

2.API

Provider

  • 用法:直接包装在根组件上。<Provider store={store}>

  • 好处:相比react + redux,这样就不需要每个组件都引入store了

useSelector

  • 用法:获取公共状态

  • 好处:

    • 相比react + redux,不需要使用store.getState()了

    • state变化了,它会自动更新

  • 格式:const 状态 = useSelector(store的数据 => 你需要的部分)

useDispatch

  • 用法:派发action,修改数据

  • 格式: const dispatch = useDispatch(); dispatch(action)

React-Redux 是为了更方便地在 React 应用中使用 Redux 而创建的一个。它提供了一些 API,可以让 Redux 的 store 和 React 组件之间更容易地进行连接。下面是 React-Redux使用方法: 1. 安装 React-Redux 首先,需要安装 React-Redux 。在命令行中输入以下命令: ``` npm install react-redux ``` 2. 创建 Store 在应用中创建 Redux 的 store,可以使用 Redux 的 createStore 函数来创建,如下所示: ``` import { createStore } from 'redux'; import rootReducer from './reducers'; const store = createStore(rootReducer); ``` 3. Provider 组件 使用 React-Redux 提供的 Provider 组件将 store 传递给应用的所有组件。在应用的入口文件中,将 App 组件包裹在 Provider 组件中,如下所示: ``` import React from 'react'; import ReactDOM from 'react-dom'; import { Provider } from 'react-redux'; import store from './store'; import App from './App'; ReactDOM.render( <Provider store={store}> <App /> </Provider>, document.getElementById('root') ); ``` 4. connect 函数 使用 React-Redux 提供的 connect 函数将组件连接到 store 上,使其能够读取和修改 store 中的状态。connect 函数接受两个参数:mapStateToProps 和 mapDispatchToProps。mapStateToProps 是一个函数,它将 store 中的状态映射到组件的 props 中。mapDispatchToProps 是一个函数,它将 store 的 dispatch 方法映射到组件的 props 中,使组件能够触发 action。下面是一个使用 connect 函数的示例: ``` import React from 'react'; import { connect } from 'react-redux'; class MyComponent extends React.Component { render() { return ( <div> <h1>{this.props.count}</h1> <button onClick={this.props.increment}>Increment</button> </div> ); } } const mapStateToProps = state => { return { count: state.count }; }; const mapDispatchToProps = dispatch => { return { increment: () => dispatch({ type: 'INCREMENT' }) }; }; export default connect(mapStateToProps, mapDispatchToProps)(MyComponent); ``` 在上面的代码中,connect 函数将 MyComponent 组件连接到 store 上,并将 count 属性和 increment 方法映射到组件的 props 中。这样,MyComponent 组件就能够读取和修改 store 中的状态了。 以上就是使用 React-Redux 的基本方法。通过 Provider 和 connect 这两个 API,我们可以更方便地在 React 应用中使用 Redux。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值