在同构React驱动的应用程序中,将Node中的客户端和服务器代码分开是一种很好的做法?

我试图在Node上构build一个同构的应用程序,最初从服务器向客户端呈现React,并通过Webpack将其绑定到客户端呈现和UI目的。

但是,我有分离客户端与服务器端的问题。 在客户端捆绑(并且正常工作)的React组件也在服务器端运行。 因此,试图更改状态或加载数据是不可能的,因为组件在服务器和客户端上运行。

我如何有效地分开这些? 或者,我必须为客户端和服务器创build一个单独的组件文件夹(对于服务器,省略数据处理)。

不知道如何在Node中正确完成一个平滑运行的同构应用程序。

我认为,你可以从样板反应 – 普遍热点例子和入门套件反应 – 普遍学到很多东西。 两者都旨在提供通用渲染。

从经验出发,基于我们公司使用的反应 – 普遍 – 热点的例子 ,我们有:

  • 在生成页面时加载dynamic数据服务器端 (例如,填充磁通存储)
  • 用React 生成html正文
  • 发送数据和ReactJS html正文客户端。 生成的html将会显示在屏幕上(确保首先加载css以避免FOC效应)
  • 重新生成客户端的应用程序状态以使数据可用于反应组件。
  • 运行启动React单一应用程序客户端的JavaScript:响应组件不应该发出任何请求来加载数据,因为您已经生成了客户端应用程序状态。

希望能帮到你:)