redux异步action_这可能是目前对redux,redux-saga最通俗的解释了

f1bd583583483cf0955e1d0fde305530.png

最近在学习react全家桶,于是做了一个基于react-pdf的在线pdf阅读项目,项目地址:

yjf27281181/react-readme​github.com
4cb9a7e1f308490ac7ebfbb6957ac554.png

里面一些异步操作(登录,查询数据库等)参考了另外一个博客项目的异步操作,由于之前没有接触过react,猛然看到如此纷繁复杂的处理流程实属懵逼,在知乎也看了不少大牛的文章,但还是觉得通俗性差了一丁点火候,正好称机会记录一下我对redux和redux-saga的理解。

一、为什么要用redux

每一个工具的出现都是为了解决某一个痛点,react的痛点就是繁琐的props和state操作,举个例子:A主页下有个工具栏B,工具栏B下有个按钮,按钮可以更新控件D,但只能通过A->C->D,这个时候如果想要点击B下的按钮更新D,需要将数据作为props从A传到C传到D,然后再在A中写一个函数用来更新这个state,然后把这个函数作为props传入B,作为按钮的点击事件。

由于操作实在过于复杂,你想到能不能直接在B中修改D的state呢?于是redux就诞生了,当然,redux并不是让你能从B组件直接更改D的state,而是通过更改公共state,改完之后再通知D去更新state。下面举个例子说明这个过程。

二、通俗易懂的例子

那么什么是公共state,如何修改公共state呢?到这里,你在别的地方应该已经看到了什么action,纯函数,reducer之类的东西了,如果你还是不懂,请看下面这个例子。

假设你(组件B)的银行账户上有500元(公共state),你想将其中的100元转到别的地方(比如

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaScript核心技术 简介: 《JavaScript核心技术》对于各种浏览器、浏览器版本、JavaScript版本、DOM版本的介绍,有助于我们理解所遇到的各种新旧代码,使我们能够对这些代码做出正确的取舍。《JavaScript核心技术》还提供了一些使用JavaScript的最佳实践。无论是新手还是老手,这些如何正确使用JavaScript的经验都能帮助他们养成良好的编程习惯。《JavaScript核心技术》还介绍了一些调试和开发JavaScript的工具,这些工具无疑能够提高我们的开发效率。 《JavaScript核心技术》最后对于Ajax和几个流行的JavaScript库的介绍,无疑会开阔我们在JavaScript使用上的思路。 《JavaScript核心技术》是一本真正意义上的“新书”,不仅介绍了最新的JavaScript知识和方向,还完全覆盖了当今Web开发中关于JavaScript的所有重要话题,它使用了大量实例代码,图文并茂地讲解了使用JavaScript的各个层次和领域的内容。它不是一本参考手册,但却是一本值得拥有的教程。 JavaScript核心技术 目录: 前言 第1章JavaScript初探 1.1规范和实现相互交织的历史 1.2跨浏览器的不兼容性和其他常见的JavaScript传说 1.3你能用JavaScript来做什么 1.4JavaScript初探:“HelloWorld!” 1.5JavaScript沙箱 1.6可访问性和JavaScript的最佳实践 第2章JavaScript数据类型与变量 2.1变量的标识 2.2作用域 2.3简单类型 2.4常量:有名称但不改变 2.5习题 第3章运算符和语句 3.1JavaScript语句的格式 3.2简单语句 3.3条件语句和程序流 3.4条件运算符 3.5逻辑运算符 3.6高级语句:循环语句 3.7习题 第4章JavaScript对象 4.1对象构造函数 4.2Number对象 4.3String对象 4.4正则表达式与RegExp 4.5有专门用途的对象:Date和Math 4.6JavaScript数组 4.7关联数组:不是数组的数组 4.8习题 第5章函数 5.1定义函数:细数所有方式 5.2回调函数 5.3函数和递归 5.4嵌套函数、函数闭包和内存泄漏 5.5作为对象的函数 5.6习题 第6章捕捉事件 6.1O级DOM上的事件句柄 6.22级DOM上的事件句柄 6.3产生事件 6.4习题 第7章表单与即时验证 7.1访问表单 7.2把事件附加在表单上:不同的方法 7.3选择列表 7.4单选按钮和复选框 7.5输入字段和JiT正则表达式 7.6习题 第8章沙箱及之上的cookie、连通性和隐私 第9章基础浏览器对象 第10章DOM:文档对象模型 第11章创建定制的JavaScript对象 第12章构建动态网页:在脚本中加入样式 第13章使用Ajax 第14章好消息:生动的程序库!令人惊异的Web服务!有趣的API! 附录习题答案

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值