Reactjs renderComponentToString-有效负载大小
作为起点,我可以成功地实现服务器端渲染/客户端装载。我遇到的问题是,react在传递给Reactjs renderComponentToString-有效负载大小,reactjs,Reactjs,作为起点,我可以成功地实现服务器端渲染/客户端装载。我遇到的问题是,react在传递给renderComponentToString的状态上标记了数据reactid后,页面的大小 该对象本身是来自服务器端异步调用的JSON负载,大小约为80KB。我按原样将其传递给renderComponentToString,结果页面超过20MB 在这个阶段,我想我可以切换到renderComponentToStaticMarkup,并在下次更新状态时使用hit客户端进行第一次区分,但我想知道这里是否有更智能的
renderComponentToString
的状态上标记了数据reactid后,页面的大小
该对象本身是来自服务器端异步调用的JSON负载,大小约为80KB。我按原样将其传递给renderComponentToString,结果页面超过20MB
在这个阶段,我想我可以切换到renderComponentToStaticMarkup,并在下次更新状态时使用hit客户端进行第一次区分,但我想知道这里是否有更智能的解决方案(props vs state?)。查看非常聪明的react quickstart()我看到异步状态有效地与正常组件生命周期完全解耦,因此不会受到此问题的影响,但是这里有很多移动部件,我更愿意基于这些部件提出一些更轻量级的产品,但是在客户端安装工作时,有必要的移动部件
想法?我做错什么了吗?我现在已经解决了这个问题:
客户端装载的序列化负载实际上是在react render方法中呈现的,这是我的一个noob错误。这样做,而不是将其串接并以一段非反应标记的形式传递,这是我从一开始就应该做的。什么是
document.body.scrollHeight
,该页面上有20mb的标记?一个潜在的解决方案可能是最初加载更少的数据,然后将页面重新组织为更小的页面,这可能也是一个更好的用户体验。它只有大约20个项目,只是每个项目都很复杂,并且有很多属性。我想我正在寻找一些验证,以证明我所看到的是预期的,并且在我考虑更改所使用的方法之前没有快速修复方法。当调用renderComponentToStaticMarkup
时,标记的大小是多少?意思是,React ID实际增加了多少重量?固定,见下文,thx