我在IE8中遇到了React webapp的问题.在最新版本的Chrome和FF中,性能很好.但是,你不知道吗,客户端运行IE8并且应用程序在这个浏览器中加载视图非常缓慢,加载时间为4秒正常. 我在IE8中使用I
我在IE8中使用IE8 Developer工具(在VirtualBox VM中运行的IE8)中分析应用程序.
在生成的调用树中,两个代码区域平均每个占用2秒.
深入研究这些代码,我找到了React渲染方法,例如mountComponent,mountChildren和createContentMarkup.这些调用有一个很长的长树,并且连续的MountComponent调用占用了相对较少的时间(100-300 ms).
似乎添加到视图中的复合组件需要花费很长时间才能添加到DOM中,这对于React来说是令人惊讶的.
有没有人有相同情况的经验,我不确定如何继续,除了拆除添加的复合组件和测试问题所在
谢谢你的建议
如果有人正在读这个,那么我唯一的答案就是简化你的组件.使用较少嵌套的组件,降低复杂性,仅在需要时使用状态渲染内容,甚至用简单的按钮替换复杂组件(嵌套列表),单击该按钮时显示嵌套列表(如果有意义). 大多数IE8似乎都无法处理大量的React更新/渲染/安装代码.从而简化您的UI设计,例如标签不是一个视图中的所有信息,并降低了组件的复杂性.