Trekerz

求知若饥 虚心若愚

Generator笔记

两个协议

一、迭代协议 两个协议 可迭代协议 迭代器协议 可迭代协议允许Js对象去定义或定制迭代行为。(可迭代的判断标准) 特点:可以使用for...of...、yield*、解构、扩展运算符来进行迭代 (1) ES6内置的可迭代类型Array、Map、Set 可调用.keys()、.values()..


Vue scoped总结

奇巧淫技

一、scoped的实现原理Vue中的scoped属性的效果主要是通过PostCss实现的。以下是转译前的代码: <style scoped lang="less"> .example{ color:red; }<..


Vue组件生命周期执行顺序

梳理脉络

一、一个例子 代码 <!-- HTML部分 --><!-- 父组件挂载 --><div id="app"></div><!-- child模板 --><div class="child" @click="updateTest(..


Redux-Saga入门

基础知识

一、Sagasaga的提出最初是为了解决分布式系统中的LLT(Long Lived Transaction),也就是长时运行事务的数据一致性问题的。 所谓“事务(Transaction)”,指的是一个原子操作,要么全部执行,要么全部回滚。那么问题来了,为了保证数据的一致性,我们是不是应该等待刚..


关于清除浮动

小知识点

一、css浮动的概念浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。 由于浮动框不在文档的普通流中,所以文档的普通流中的块框表现得就像浮动框不存在一样。当元素浮动之后,不会影响块级元素的布局,只会影响内联元素布局。 二、为何要清除浮动当父元素框的高度小于浮动框的时候..


组件高级知识

受控组件、无状态组件、高阶组件、纯组件

受控组件(controlled components)在原生的表单中,input的值是这么设定的。 <input value="mapbar_front" /> 并且在这种情况下,我们能够给input中输入任何的值。但是在react中,我们对于input如果给定一个初始值,它是不会随..


CSS选择器 - 性能的探究及提升

性能探究

一. CSS选择器性能是如何消耗的?工作原理:浏览器利用CSS选择器来匹配文档元素。 工作流程:例如 #hd .nav > a { padding-left: 15px }   1.在文档所有元素中寻找所有的 a 标签。   2.在1的结果中寻找其父元素的类名为“.nav”的元素。   3..


transform的高性能原因

为何比margin更快?

一、重排DOM的变化影响到了元素的集合属性,浏览器需要进行重排,重排必然引起重绘。 重排何时发生: 元素位置改变 元素尺寸改变 元素内容改变 页面渲染初始化(无法避免) 浏览器窗口尺寸改变 浏览器的自动优化 (1)相邻的三次重排重绘,v8会用队列缓存起来,一次完成。 (2)获取布局信息(..