React


# React

React 是一个用于动态构建用户界面的 JavaScript 库(只关注于视图)。

起源于 Facebook 的内部项目,用来架设 Instagram 的网站,并于 2013 年 5 月开源。


React 特点:

  • 声明式设计:React 采用声明式编码,可以轻松描述应用。
  • 高效:React 使用虚拟 DOM,不总是直接操作页面真实 DOM;通过优秀的 Diffing 算法,最小化页面重绘。
  • 灵活:React 可以与已知的库或框架很好地配合。
  • JSX:JSX 是 JavaScript 语法的扩展,React 开发不一定使用 JSX,但使用它能带来很大的便利。
  • 组件:通过 React 构建组件,使得代码更加容易得到复用,能够很好的应用在大项目的开发中。
  • 单向响应的数据流:React 实现了单向响应的数据流,从而减少了重复代码,这也是它为什么比传统数据绑定更简单。
<div id="example"></div>
<script type="text/babel">
  ReactDOM.render(
    <h1>Hello, world!</h1>,
    document.getElementById('example')
  );
</script>
1
2
3
4
5
6
7

声明式编码与命令式编码的区别:

  • 命令式编码:每一步都要自己亲自去定义、调用,每一步都会按照自己的命令依次执行。
  • 声明式编码:很多操作不用亲历亲为,只需要根据规定的语法进行声明,剩下的工作由框架或库内部完成。

关于 React 的知识点,主要参考:

  • 各种网络资源