react
文章平均质量分 79
一树梨花
这个作者很懒,什么都没留下…
展开
-
Redux-Saga: 核心原理剖析
Saga简介: (来自Saga文档介绍)redux-saga 是一个用于管理应用程序 Side Effect(副作用,例如异步获取数据,访问浏览器缓存等)的 library,它的目标是让副作用管理更容易,执行更高效,测试更简单,在处理故障时更容易。可以想像为,一个 saga 就像是应用程序中一个单独的线程,它独自负责处理副作用。 redux-saga 是一个 redux 中间件,意味着这个线程可以通过正常的 redux action 从主应用程序启动,暂停和取消,它能访问完整的 redux state,也原创 2020-10-06 11:48:59 · 802 阅读 · 1 评论 -
剖析Dva原理: 手写Dva
关于Dva:dva 是一个基于 redux 和 redux-saga 的数据流方案,然后为了简化开发体验,dva 还额外内置了 react-router 和 fetch,所以也可以理解为一个轻量级的应用框架,或者可以理解为react框架插件处理的全家桶.使用Dva:Dva的使用可以前往Dva的官方网站: https://dvajs.com/guide/getting-started.html若是需要快速创建一个React 集成Dva的项目,可以使用dva-cli脚手架工具:npm install原创 2020-09-24 11:28:10 · 1293 阅读 · 0 评论 -
Mobx原理: 手写mobx
手写状态管理库: Mobxmobx是一个状态管理库,类似于redux或者vuex完成状态观察相应相关的处理。mobx使得状态管理更加的简单和透明。由于这篇文章时mobx原理解析,所以关于mobx的使用就不在这里记录。注: 在开始之前,需要先搭建起支持Es7语法的装饰器开发的webpack等开发环境. 这里主要实现Mobx的observable, autorun两个方法.Mbox的observable的方法主要实现的是对状态的Proxy深度代理,使用Proxy对象代理状态对象的属性,同时在auto原创 2020-09-19 22:59:43 · 1787 阅读 · 0 评论 -
React源码剖析:手写React DOM DIFF比对
可能用过React或者Vue这样的前端框架的人可能都应该清楚,在React或者Vue中完成节点的更新渲染最重要的应该就是这DOM DIFF的比对了,它实际的需求就是尽可能的复用页面上已经创建的老节点,做一些补丁操作使得尽可能的复用已有的DOM,从而提高渲染更新的性能。之前有实现了Vue中的DOM DIFF的比对,但是React中的DOM DIFF和Vue中还是有比较大的区别的,那就来看看吧!::React中的DOM DIFF的比对采用逐层比对,深度优先的比对方法,及从虚拟DOM树的根节点开始,先遍历节原创 2020-05-24 12:27:49 · 524 阅读 · 0 评论 -
React Hooks ---用法简介
React在2018年年末推出的Hooks新特性使得之前的function无状态组件变得有状态了,让函数组件也拥有了类组件的特性。同时hooks的出现也解决了类组件中组件逻辑散布于各个生命周期中,造成组件臃肿,可复用性不强的特点。同时,对于一些组件的副作用在Hooks中也得到了较好的解决。总之,Hooks的出现,对于React组件化的开发而言将会是一次巨大的革新这篇博客主要介绍的是关于Hooks...原创 2019-11-03 17:41:33 · 179 阅读 · 0 评论