摘要: 前言 要正确理解this,首先得理解执行上下文,这里推荐汤姆大叔的 "执行上下文" ,因为 是在运行代码时确认具体指向谁,箭头函数除外。 全局作用域中的this : 每个 文件都是一个模块, 指向空对象( ) 当然也有些意外,比如下面这种情况: 浏览器端 : 指向 。 函数作用域中的this 这里分 阅读全文
posted @ 2019-05-18 23:50 Raion 阅读(552) 评论(0) 推荐(0) 编辑
摘要: 前言 不知不觉已经快两年了,准确来说还差3个月,去过大公司当螺丝钉,也去过小公司独立负责。回想毕业这一年多的时光,有过和大多数程序员的困境和迷茫。从最初的业务小能手到后面的举棋不定,不知未来路在何方,思考着迷茫的未来。我心里并不排斥业务,但是始终如一的业务开发,让我看不清未来的方向。也曾有过解决复杂 阅读全文
posted @ 2019-05-03 12:51 Raion 阅读(801) 评论(0) 推荐(0) 编辑
摘要: 渲染机制 渲染机制主要分为两部分: 首次渲染和更新渲染。 首次渲染 首先通过一个小例子,来讲解首次渲染过程。 程序运行到 时,其中的 babel React.createElement(ClickCounter, null) element`如下: 接下来执行 函数,生成 节点。首先了解下 的部分数 阅读全文
posted @ 2019-04-14 10:13 Raion 阅读(1274) 评论(0) 推荐(0) 编辑
摘要: 前言 本人17年毕业,至今一年多工作经验,三月加入找工作的浪潮,深感乏力,好在最后拿到心仪公司的offer,这里整理一下面试过程中的题目(有些忘记了😓,简单总结下两家面试体验不错的公司),分享给大家。 再惠 一面 mobx和redux的区别 求一个对象的层级数(递归和非递归) 用两种方式实现定时轮 阅读全文
posted @ 2019-03-29 15:58 Raion 阅读(1164) 评论(0) 推荐(0) 编辑
摘要: 事件分发 之前讲述了事件如何绑定在 上,那么具体事件触发的时候是如何分发到具体的监听者呢?我们接着上次注册的事件代理看。当我点击 按钮时,触发注册的 事件代理。 为`click nativeEvent dispatchEvent(topLevelType, nativeEvent) _interac 阅读全文
posted @ 2019-03-26 11:53 Raion 阅读(1438) 评论(0) 推荐(0) 编辑
摘要: 事件机制 本系列以React v16.8.3为基础进行源码分析 React事件主要分为两部分: 事件注册与事件分发。下面先从事件注册说起。 事件注册 假设我们的程序如下: 事件注册主要发生在初始化Dom属性的时候,调用 方法,对一些类型dom进行事件绑定。 js switch (tag) { cas 阅读全文
posted @ 2019-03-22 23:16 Raion 阅读(718) 评论(0) 推荐(0) 编辑
摘要: 前言 在初步了解Redux中间件演变过程之后,继续研究Redux如何将中间件结合。上次将中间件与redux硬结合在一起确实有些难看,现在就一起看看Redux如何加持中间件。 中间件执行过程 希望借助图形能帮助各位更好的理解中间件的执行情况。 redux如何加持中间件 现在是时候看看redux是如何将 阅读全文
posted @ 2019-01-28 21:26 Raion 阅读(584) 评论(0) 推荐(2) 编辑
摘要: 前言 原先改变store是通过dispatch(action) = > reducer;那Redux的Middleware是什么呢?就是dispatch(action) = > reducer过程中搞点事情,既不更改原代码,还能扩展原有功能,这就是Redux的中间件。 至于Redux的Middlew 阅读全文
posted @ 2019-01-25 21:41 Raion 阅读(468) 评论(0) 推荐(0) 编辑
摘要: 前言 当树形结构的层级越来越深时,操作某一节点会变得越来越费劲,维护成本不断增加。所以线性结构与树形的相互转换变得异常重要! 首先,我们约定树形结构如下: 线性结构: 特殊情况 上面的树形结构并不是很完美,当遇到菜单或者分类等业务场景时,每个顶级节点的parentId约定为0,当存在多个顶级节点,显 阅读全文
posted @ 2018-04-22 13:15 Raion 阅读(6567) 评论(0) 推荐(0) 编辑
摘要: 前言 搭建好前文的开发环境,已经可以进行开发。然而实际的项目中,不同环境有着不同的构建需求。这里就将开发环境和生产环境的配置单独提取出来,并做一些简单的优化。 分离不同环境公有配置 分离不同环境公有配置 不同环境虽然有不同的构建需求,但依然有相同的部分,这里将共同部分提取出来,单独配置,其他环境再合 阅读全文
posted @ 2018-01-09 18:57 Raion 阅读(2766) 评论(2) 推荐(0) 编辑