使用redux进行代码分离和服务器端呈现

时间:2016-11-09 18:56:55

标签: reactjs redux react-router

我按照Dan Abramov here的描述对我的React + Redux应用程序进行了代码拆分,一切似乎都运行正常。但是,我也在服务器上渲染应用程序。这导致this answer记录的控制台错误。但是,我并没有尝试清理旧状态 - 我在服务器计算它时加载状态。问题是服务器在加载codesplitted模块之前加载到全局状态的状态。

如果我正确理解Dan,那么错误只是一个警告,而且一切似乎都能正常运行,但在几乎每个页面加载时看到错误都不是一个愉快的开发工作流程。

我可以/应该采用不同的代码分割代码来缓解这个问题吗?这几乎是Dan的例子。

1 个答案:

答案 0 :(得分:0)

当它击中我的时候答案很明显。就像您将redux状态发送到客户端一样,您需要告诉客户端在创建时需要将哪些可选的reducer包含在组合的reducer中。

根据Dan Abramov在我的问题中的链接答案中的工作,我将store.asyncReducers更改为路径数组而不是对象地图。然后我能够序列化这个数组并将其发送到前端,在那里能够require服务器端渲染使用的异步缩减器。