摘要: 1.ES5的继承实质上是先创建子类的实例对象,然后再将父类的方法添加到this上(Parent.apply(this)). 2.ES6的继承机制完全不同,实质上是先创建父类的实例对象this(所以必须先调用父类的super()方法),然后再用子类的构造函数修改this。 3.ES5的继承时通过原型或 阅读全文
posted @ 2020-12-24 08:16 人间流浪 阅读(318) 评论(0) 推荐(0)
摘要: 什么是ES5 作为ECMAScript第五个版本(第四版因为过于复杂废弃了),浏览器支持情况可看第一副图,增加特性如下。 1. strict模式 严格模式,限制一些用法,'use strict'; 2. Array增加方法 增加了every、some 、forEach、filter 、indexOf 阅读全文
posted @ 2020-12-23 08:21 人间流浪 阅读(205) 评论(0) 推荐(0)
摘要: 什么是高阶组件? 一个高阶组件只是一个包装了另外一个 React 组件的 React 组件。 这种形式通常实现为一个函数,本质上是一个类工厂(class factory),它下方的函数标签伪代码启发自 Haskell hocFactory:: W: React.Component => E: Rea 阅读全文
posted @ 2020-12-21 08:32 人间流浪 阅读(225) 评论(0) 推荐(0)
摘要: key key 帮助 React 识别哪些元素改变了,比如被添加或删除。因此你应当给数组中的每一个元素赋予一个确定的标识。 一个元素的 key 最好是这个元素在列表中拥有的一个独一无二的字符串。通常,我们使用数据中的 id 来作为元素的 key,当元素没有确定 id 的时候 万不得已你可以使用元素索 阅读全文
posted @ 2020-12-21 08:27 人间流浪 阅读(306) 评论(0) 推荐(0)
摘要: react中使用 Virtual DOM (用js来描述dom),使用diff来比较更新,减少性能损耗 diff策略 · tree diff 每一次更新生成两个dom树,按照层级进行对比,如果相对应的层级发生变化,只有删除和增加 ·component diff 如果是同一类型的组件,就继续按照tre 阅读全文
posted @ 2020-12-18 15:33 人间流浪 阅读(275) 评论(0) 推荐(0)
摘要: 虚拟DOM不会进行排版与重绘操作 虚拟DOM就是把真实DOM转换为Javascript代码 虚拟DOM进行频繁修改,然后一次性比较并修改真实DOM中需要改的部分(注意!),最后并在真实DOM中进行排版与重绘,减少过多DOM节点排版与重绘损耗 真实DOM频繁排版与重绘的效率是相当低的 虚拟DOM有效降 阅读全文
posted @ 2020-12-18 08:18 人间流浪 阅读(180) 评论(0) 推荐(0)
摘要: beforeCreate( 创建前 ) created ( 创建后 ) beforeMount(挂载前) mounted(挂载后) beforeUpdate(数据更新前) updated(更新后) beforeDestroy(销毁前) destroyed(销毁后) 阅读全文
posted @ 2020-12-17 08:26 人间流浪 阅读(46) 评论(0) 推荐(0)
摘要: JSX 是一个看起来很像 XML 的 JavaScript 语法扩展 React 使用 JSX 来替代常规的 JavaScript。 在react中.js后缀与.jsx没有区别,react中使用的模板语言是jsx,但模板语言的本质仍然是js代码 在React的组件中,只有引入了React的模块才能正 阅读全文
posted @ 2020-12-16 18:27 人间流浪 阅读(120) 评论(0) 推荐(0)