状态如何在React服务器端渲染中工作?

时间:2017-06-19 01:57:54

标签: javascript reactjs render state server-rendering

我正在观看此video,并希望了解第一页加载期间组件的状态如何设置为组件。组件是否已经使用服务器端设置的状态进行构建,然后以HTML OR 的形式发送到客户端,组件在服务器端构建,然后发送到客户端作为HTML,然后运行bundle.js来获取数据?

在视频的大约8分钟标记处,发言者谈论需要设置的窗口状态并与React状态同步。那是什么?如果它已经在服务器端设置,为什么需要在窗口上显示状态?是因为它还没有被设置,它是从服务器单独发送的,客户端组件必须从窗口中取出它?

1 个答案:

答案 0 :(得分:2)

在将React与服务器呈现一起使用时,我们还必须在响应中发送应用程序的状态,以便客户端可以将其用作初始状态。这很重要,因为如果我们在生成HTML之前预先加载任何数据,我们希望客户端也可以访问这些数据。否则,客户端上生成的标记不会与服务器标记匹配,客户端将不得不再次加载数据。

要将数据发送到客户端,我们需要:

  • 在每个请求上创建一个全新的React商店实例;    可选择调度一些动作;    将国家拉出商店;    然后将状态传递给客户端。    在客户端,将创建一个新的React存储,并使用服务器提供的状态进行初始化。

React在服务器端唯一的工作就是提供我们应用的初始状态。