react中使用redux管理状态流程

Posted zhang134you

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了react中使用redux管理状态流程相关的知识,希望对你有一定的参考价值。

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;

以上是关于react中使用redux管理状态流程的主要内容,如果未能解决你的问题,请参考以下文章

Redux-介绍&工作流程

Redux——详解

React中的状态管理---Mobx

React中的状态管理---Mobx

如何管理 React 中的状态

redux和React-Redux的基本使用