特点
前端 UI 本质问题是: 如何将来源于服务器的动态数据和用户的交互行为高效地反映复杂的用户界面上。 React 通过引入虚拟 DOM、状态、单向数据流等设计理念,形成以组件为核心,用组件搭建 UI 的开发模式,完美地将数据、组件状态和 UI 映射到一起,极大提高了开发大型 Web 应用的效率。
React 的特点:
- 声明式的视图层
使用 React 不用担心数据、状态和视图交错。
- 简单的更新流程
定义 UI 状态,React 框架会复杂把它渲染成最终的 UI。当状态数据发生变化时,React 也会根据最新的状态渲染出最新的 UI
- 灵活地渲染实现
先渲染成虚拟 DOM,简单的 JS 对象然后渲染成对应 UI
- 高效的 DOM 操作
操作 JS 对象比起操作真实 DOM 在效率上有了巨大提升。基于 Diff 算法,React 可以尽量减少虚拟 DOM 到真实 DOM 的渲染次数
尽管如此,React 并不是 MVC 框架,从分层上看,React 属于 V 层,关注如何根据状态创建可复用 UI 组件。当应用复杂时,需结合 Redux 等才能最大发挥
