使用WebWorkers呈现React组件

时间:2015-12-17 00:46:40

标签: javascript html5 reactjs web-worker web-frontend

我在网上看到了一些关于使用HTML5 WebWorkers渲染React组件的东西。即使是Pete Hunt,React正在讨论这个问题。

我对数组的每个元素都有一些CPU密集型工作,然后是数组中每个元素的React渲染,所以我正在考虑将每个元素放在WebWorker中,然后将HTML字符串发布回主UI线程。

我的问题是 - 看起来React.renderToString被弃用而不赞成ReactDOMServer.renderToString ...所以我问你们所有人和Pete Hunt - 我们是否应该在前端使用ReactDOMServer我们希望使用WebWorkers来呈现React组件,还是有另一种推荐方法?

(当然,我们只能在JS中的线程之间传递字符串/序列化数据,因此我们的想法是将React组件呈现为字符串,然后将其作为字符串传递回主UI线程。)

1 个答案:

答案 0 :(得分:4)

我写了一个React的快速实现,在Web worker中呈现。它实际上不是renderToString,而更像是自定义渲染器。我还发现这比正常实现要快得多。

演示页面有2个应用程序 - 一个显示CPU密集型应用程序的示例,以及一个包含事件的简单TODO列表。

以下是效果数字 - http://blog.nparashuram.com/2016/02/using-webworkers-to-make-react-faster.html