2018年11月10日

React Fiber源码分析 第三篇(异步状态)

摘要: 先附上流程图~ 调用setState时, 会调用classComponentUpdater的enqueueSetState方法, 同时将新的state作为payload参数传进 enqueueSetState会先调用requestCurrentTime获取一个currentTime, 通过获取到的c 阅读全文

posted @ 2018-11-10 11:47 菜的黑人牙膏 阅读(1432) 评论(0) 推荐(1) 编辑

2018年11月8日

React Fiber源码分析 第二篇(同步模式)

摘要: 先附上两张流程图 1.scheduleRootUpdate 这个函数主要执行了两个操作 1个是创建更新createUpdate并放到更新队列enqueueUpdate, 1个是执行sheculeWork函数 先从createUpdate函数分析, 他直接返回了一个包含了更新信息的对象 接着更新pay 阅读全文

posted @ 2018-11-08 21:44 菜的黑人牙膏 阅读(1092) 评论(0) 推荐(0) 编辑

2018年11月6日

React Fiber源码分析 第一篇

摘要: 先附上流程图一张 先由babel编译, 调用reactDOM.render,入参为element, container, callback, 打印出来可以看到element,container,callback分别代表着react元素、DOM原生元素,回调函数 render实际上调用的是 legac 阅读全文

posted @ 2018-11-06 20:55 菜的黑人牙膏 阅读(1562) 评论(0) 推荐(0) 编辑

2018年8月4日

数据结构 之 树总结

摘要: 1.二叉树 特点:二叉树每个节点最多只有两个子节点, 分为左右子树, 且左子树 < 节点 < 右子树。 时间复杂度: O(logn), 存在中序、前序、后序遍历。 2.AVL树 特点:自平衡二叉树, 通过旋转来平衡二叉树的高度, 适用于查找多操作少的条件。 时间复杂度: 找、插入和删除在平均和最坏情 阅读全文

posted @ 2018-08-04 17:19 菜的黑人牙膏 阅读(989) 评论(0) 推荐(0) 编辑

2018年2月6日

Node.js--Stream

摘要: Node.js--Stream 1. 概述 流(stream)在 Node.js 中是处理流数据的抽象接口(abstract interface)。 stream 模块提供了基础的 API 。使用这些 API 可以很容易地来构建实现流接口的对象。 流可以是可读的、可写的,或是可读写的。所有的流都是  阅读全文

posted @ 2018-02-06 16:30 菜的黑人牙膏 阅读(234) 评论(0) 推荐(0) 编辑

2017年10月23日

VUE 组件通信总结

摘要: 1.prop 父组件传递给子组件,即通过VUE本身具有的Props属性来传递值 Child组件 Father组件 运行结果 2.非Prop传递数据 Child Father 运行结果 3.v-on v-emit 子组件传给父组件 Child Father 运行结果 4.空vue实例作为事件总线,非父 阅读全文

posted @ 2017-10-23 19:13 菜的黑人牙膏 阅读(213) 评论(0) 推荐(0) 编辑

2017年8月16日

JavaScript 二进制转文件

摘要: 关于在javascript下,如何将二进制转换成相应的文件并下载。 首先, 我们需要得到二进制的数据以及相应的文件格式,没有相应的格式也可以,可以通过二进制来判断,但相对会麻烦很多,所以建议可以要求后端提供文件的名字来得到相应的文件格式。 http://blog.csdn.net/sdomain/a 阅读全文

posted @ 2017-08-16 17:52 菜的黑人牙膏 阅读(1932) 评论(0) 推荐(0) 编辑

2017年4月22日

IE的浏览器模式、文本模式

摘要: 最近在部署网页的时候,发现IE下的布局完成混乱。 在改变IE的文本模式后,显示就正常了。 IE的浏览器模式,用于切换IE针对该网页的默认文本模式、对不同版本浏览器的条件注释解析、决定请求头里userAgent的值。它在浏览器发出请求之前就已经确定,网站没有办法修改这个值。它代表的是用户以何种浏览器访 阅读全文

posted @ 2017-04-22 11:21 菜的黑人牙膏 阅读(391) 评论(0) 推荐(0) 编辑

2017年4月21日

浏览器字体渲染

摘要: 在不同的浏览器商中,如果没有设置字体,由各浏览器实现默认字体的话,会造成比较大的差异。 如Firefox下的默认字体要比Chrome下的默认字体要大。 在同样设置font-size = 21px的情况下,Firefox大约为29px,而Chrome为21px。 所以,最好在body下设置字体font 阅读全文

posted @ 2017-04-21 21:26 菜的黑人牙膏 阅读(226) 评论(0) 推荐(0) 编辑

2017年4月20日

Javascript Cookie小插件

摘要: var ManagerCookie = function(){ //添加cookie function addCookie(key,value,time,path){ key = encodeURI(key); value = encodeURI(value); var _expires = new Date(); ... 阅读全文

posted @ 2017-04-20 16:56 菜的黑人牙膏 阅读(176) 评论(0) 推荐(0) 编辑

导航