React: Internal

23rd March 2020 at 4:59pm

TODO: 这里的内容应该更体系化,应该被拆分。

  1. React 的事件绑定中,事件处理函数的 this 参数都是指向 component instance 本身的。而 JavaScript 中事件处理函数中的 this 好像没什么用处。
  2. React 使用了 Event delegation,原理即是:DOM 里面某些节点可能会经常被增加/删除,如果要监听他们的点击事件,可以在他们的父节点上增加 EventListener,再判断 Target。据说执行效率会高一些。
  3. props 的数据不要去变,要变的数据放在 state 里面
  4. React 认为 JavaScript 的执行速度不是瓶颈,瓶颈在于 DOM 的更新上。于是他们做了很多事情优化 DOM 的更新。比如 Child Reconciliation
  5. 组件间有所属关系,数据从拥有者流向归属者。
  6. props 是单向数据绑定,而且值是不可变的;state 应该是双向的。

参考: