React简介
React 是一个用于构建用户界面的 JS 库,主要用于构建UI。
React由美国的公司Facebook在2011年诞生并于2013年开源发布
特点:
1.声明式设计 −React采用声明范式,可以轻松描述应用。
2.高效使用虚拟dom+优秀的diffing算法,减少了与真实dom的交互
3.JSX 是 JavaScript 语法的扩展。React 开发不一定使用 JSX ,但我们建议使用它。
4.组件 − 通过 React 构建组件,使得代码更加容易得到复用,提高开发效率,能够很好的应用在大项目的开发中。
5.单向响应的数据流 − React 实现了单向响应的数据流,从而减少了重复代码,这也是它为什么比传统数据绑定更简单
6.在React-Native中可以使用React语法进行移动端开发
虚拟dom
其实虚拟dom本质上是一个Object类型的一般对象
虚拟dom的优点:
1.它加载过一次数据时就会把加载过的数据放到内存中下次如果有更改然后继续加载的时候只是加载新增的数据并不会去重复加载之前的数据
2.虚拟dom相对于真实dom是更轻量级的,因为虚拟dom是react内部在用,用哪个提供哪个属性,无需真实dom上挂载的那么多属性
3.虚拟dom会被React转换成真实dom最后渲染到页面上
MVM优点
MVM模式和MVVC模式一样,主要目的是分离视图(View)和模型(Model),有几大优点
React框架只是mvc中的c,Angular才是真正的mvc框架
1. 低耦合:视图(View)可以独立于Model变化和改变,一个ViewModel可以绑定到不同的’View’上,当View变化的时候Model可以不变,当Model变化的时候View也可以不变
2.可重用性:你可以把一些视图逻辑放在一个ViewModel里面,让一个ViewModel里面,让很多view重用这段视图逻辑
3.独立开发:开发人员可以专注于业务逻辑和数据的开发&#