zoukankan      html  css  js  c++  java
  • Redux零碎知识点回顾

    1、什么是state:应用中所有的数据都以 state的形式存放在store中。

    2、什么是store:一个应用中只有一个store,用来维持应用所有的state树的对象。一个 State 对应一个 View,因此store是一个包含多个state的容器。

    3、什么是action:action本质是个普通对象,必须用一个type字段表示将要执行的动作。

    4、store 里能直接通过 store.dispatch() 调用 dispatch() 方法,但是多数情况下你会使用 react-redux 提供的 connect() 帮助器来调用。

    5、单一数据源:整个应用的 state 被储存在一棵 object tree 中,并且这个 object tree 只存在于唯一一个 store 中。

    6、State是只读的:惟一改变 state 的方法就是触发 action,action 是一个用于描述已发生事件的普通对象。

    7、使用纯函数 reducers执行修改:Reducer 只是一些纯函数,它接收先前的 state 和 action,并返回新的 state。

    8、actionstatereducer:action描述发生了什么事情;reducer指明了如何更新state;

    9、reducer不能有的3个操作:修改传入的参数、 API 请求和路由跳转、使用Date.now() 或 Math.random()等非纯函数。

    10、可以在reducer里指定state初始化的数据,重点需要考虑的是应该如何设计state对象的结构。

    11、当reducer多了就需要对reducer进行拆分,最后需要使用combineReducers对拆分的reducer进行合并。

    import {combineReducers} from 'redux';
    export default combineReducers({
      reducer1,
      reducer2
    })

    12、创建store:要创建store只需要把根部的 reducing 函数 传递给 createStore。

      createStore() 的第二个参数是可选的, 用于设置 state 初始状态。

    import { createStore } from 'redux';
    let store = createStore(reducer, [ 'Use Redux' ])

    13、Redux 应用中数据的生命周期遵循下面 4 个步骤:  

    • 调用 store.dispatch(action)。
    • store 调用传入的 reducer 函数。
    • 根 reducer 应该把多个子 reducer 输出合并成一个单一的 state 树。
    • store 保存了根 reducer 返回的完整 state 树。

     

  • 相关阅读:
    Vue3.0版本以上路由跳转控制台报错调整
    vue-cli3.0 项目如何使用sass less
    vue-element-admin项目npm install 安装不成功问题
    封装axios
    element ui判断是否必填添加校验
    element ui上传图片限制尺寸(宽、高、)大小、格式等
    阿里云服务器挂载新数据盘
    GitHub上最火的40个Android开源项目
    设计模式——设计原则
    设计模式——策略模式
  • 原文地址:https://www.cnblogs.com/newh5/p/6883386.html
Copyright © 2011-2022 走看看