react中使用redux管理状态流程

本文介绍如何使用Redux进行状态管理,包括安装Redux、定义状态存储对象及在React组件中使用Redux实现状态更新。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、在项目中安装redux插件

npm install redux -S

2、针对单独的view组件定义store状态存储对象,参数为对状态的更新操作函数

import { createStore } from 'redux';

const reducer = (state = 0, action) => {
  switch (action.type) {
    case 'INCREMENT': return state + 1;
    case 'DECREMENT': return state > 0 ? state - 1 : state;
    default: return state;
  }
};

const store = createStore(reducer);
export default store;

3、在view组件中引入store状态存储对象,并且在constructor中监听状态的变化,更新view上的数据

import React, { Component } from 'react';

import store from './store';  //引入状态对象

class App extends Component {
  constructor(props){
    super(props);
    this.state = {   
      count:store.getState()   //获取状态数据
    }
    store.subscribe(() => {   //监听状态变化更新数据
      this.setState({
        count:store.getState()
      })
    })
  }

  onIncrement = () => {  //分发状态更新
    store.dispatch({
      type:'INCREMENT'
    })
  }

  onDecrement = () => { //分发状态更新
    store.dispatch({
      type:'DECREMENT'
    })
  }

  render() {
    return (
      <div>
          <h1>{this.state.count}</h1>   <!--展示数据-->
          <button onClick={this.onIncrement}>+</button>
          <button onClick={this.onDecrement}>-</button>
      </div>
    );
  }
}
export default App;

转载于:https://www.cnblogs.com/zhang134you/p/10616718.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值