Redux组件库

作者: 风雨彩虹_123 | 来源:发表于2021-06-28 14:11 被阅读0次

Redux 状态管理的组件库,当我们遇到某个组件的状态需要共享,某个状态需要在任何地方都可以拿到,一个组件需要改变全局状态,一个组件需要改变另一个组件的状态时,Redux是我们不二选择,下面开始Redux的简单学习。

Redux工作流程

1.const store = createStore(myApp); //创建一个store容器来保存数据

2.store.dispatch(action); //用户发出 Action

3.let nextState = todoApp(previousState, action); //Store 自动调用 Reducer,并且传入两个参数:当前 State 和收到的 Action。 Reducer 会返回新的 State

4.store.subscribe(listener); //State 一旦有变化,Store 就会调用监听函数

5.listener监听函数做处理。

store

Store 就是保存数据的地方,可以看成一个容器。整个应用只能有一个 Store。Redux 提供createStore这个函数,用来生成 Store。

import { createStore } from 'redux';
const store = createStore(myApp);

sore.dispath()是view发出Action的唯一方法。
store.subscribe方法设置监听函数,一旦 State 发生变化,就自动执行这个函数。

state

state对象包含所有数据,它是Store某一时刻的数据,当前时刻的 State,可以通过store.getState()拿到

import { createStore } from 'redux';
const store = createStore(myApp);
const state = store.getState();

Action

Action 是把数据从应用传到 store 的有效载荷。它是 store 数据的唯一来源。创建Action:

const ADD_TODO = '添加 TODO';

function addTodo(text) {
  return {
    type: ADD_TODO,
    text
  }
}
const action = addTodo('Learn Redux');

Reducer

Reducer 是一个函数,它接受 Action 和当前 State 作为参数,返回一个新的 State。Reducer 纯函数是函数式编程的概念,所以不能改写参数,不能调用系统I/O的API,不能调用Date.now()或者Math.random()等方法,因为每次会得到不一样的结果。

const reducer = (state , action) => {
  switch (action.type) {
    case 'ADD':
      return state + action.payload;
    default: 
      return state;
  }
};
const state = reducer(1, {
  type: 'ADD',
  payload: 2
});

相关文章

  • 记录react相关一些功能使用(持续更新)

    React-redux connect功能:连接容器组件和展示组件使用 React Redux 库的 connec...

  • #React-Redux

    React-Redux是Redux的官方React绑定库。它能够使你的React组件从Redux store中读取...

  • Redux组件库

    Redux 状态管理的组件库,当我们遇到某个组件的状态需要共享,某个状态需要在任何地方都可以拿到,一个组件需要改变...

  • react-redux

    为了方便使用,redux的作者封装了一个react的专用库React-Redux。 安装 容器组件和展示组件 在r...

  • mini-react-redux系列之一:Provider

      react-redux是一个用来连接redux store 和 react组件的库,它的源码比较精简,mini...

  • React 全家桶

    一. 全家桶目录 React 基础 React Hooks React 路由 React Redux 组件库 Im...

  • RN 开发常用三方库及小技巧总结

    开发常用三方库 组件的 defaultProps 通用style react-redux + class + ho...

  • React-Redux的理解与实现

    React-Redux 这个库出现的意义就是将redux和react进行连接。能够让各子组件能够使用到存储在red...

  • react-redux:connecting react to

    是什么把 react 组件和 redux 连接起来的?答案是 react-redux库。 两个核心组成部分 Pro...

  • React Redux

    Redux React-Redux 将所有组件分成两大类:UI 组件(presentational compone...

网友评论

    本文标题:Redux组件库

    本文链接:https://www.haomeiwen.com/subject/blbyyltx.html