React性能优化完全指南,将自己这几

长白癜风是怎么回事 http://m.39.net/baidianfeng/a_4424437.html

本文分为三部分,首先介绍React的工作流,让读者对React组件更新流程有宏观的认识。然后列出笔者总结的一系列优化技巧,并为稍复杂的优化技巧准备了CodeSandbox源码,以便读者实操体验。最后分享笔者使用ReactProfiler的一点心得,帮助读者更快定位性能瓶颈。

React工作流

React是声明式UI库,负责将State转换为页面结构(虚拟DOM结构)后,再转换成真实DOM结构,交给浏览器渲染。当State发生改变时,React会先进行调和(Reconciliation)阶段,调和阶段结束后立刻进入提交(Commit)阶段,提交阶段结束后,新State对应的页面才被展示出来。

React的调和阶段需要做两件事。1、计算出目标State对应的虚拟DOM结构。2、寻找「将虚拟DOM结构修改为目标虚拟DOM结构」的最优更新方案。React按照深度优先遍历虚拟DOM树的方式,在一个虚拟DOM上完成两件事的计算后,再计算下一个虚拟DOM。第一件事主要是调用类组件的render方法或函数组件自身。第二件事为React内部实现的Diff算法,Diff算法会记录虚拟DOM的更新方式(如:Update、Mount、Unmount),为提交阶段做准备。

React的提交阶段也需要做两件事。1、将调和阶段记录的更新方案应用到DOM中。2、调用暴露给开发者的钩子方法,如:



转载请注明地址:http://www.duanxua.com/dxyj/8594.html
  • 上一篇文章:
  • 下一篇文章: 没有了
  • 热点文章

    • 没有热点文章

    推荐文章

    • 没有推荐文章