本次学习React全家桶包含一下几部分:
- React基础
- React-Router:进行路由的库
- PubSub:消息管理的库
- Redux:集中式状态管理的库
- Ant-Design:UI组件库
React是什么?
- 用于构建用户界面的js库
- React是一个将数据渲染位HTML视图的开源JavaScript库
- React是由FaceBook开发的,并于2013年5月进行了开源
原生JS存在的问题:
- 原生的js需要频繁的操作dom元素、效率低。通过dom-api操作ui
- js直接操作dom,浏览器需要对dom元素进行重绘重排
- 原生js没有组件化的编码方案,代码复用率低。组件化就是将html、css、js封装为一套内容,直接复用这一块内容。
React的优点:
- 采用组件化模式、声明式编码,提高开发效率及组件复用率
- 在React Native中可以使用React语法进行移动端开发
- 使用虚拟Dom技术以及优秀的Diffing算法,尽量减少与真实Dom进行交互。虚拟dom是存在内存中的,如果新的dom已经存在于虚拟dom中(通过Diffing算法进行比较发现的),则可以复用之前的dom元素。这样不需要重绘已有的dom。Diffing算法主要用于比较两个组件树之间的不同之处,从而用于只局部更新。
基础知识:
- this的指向
- 类
- es6语法
- npm包管理器
- 原型、原型链
- 数组常用方法
- 模块化