javascript - 使用 react-router v4 和预取数据进行服务器渲染

标签 javascript reactjs react-router server-rendering

我在 RR 3 的服务器端渲染方面做了很多工作,所以我想看看它在 v4 的上下文中是如何工作的。我按照网站上的教程进行操作,但是由于渲染是与路由匹配一起进行的,因此无法像以前那样实现预取数据。

以下是我过去使用 v3 进行服务器渲染的方式: https://github.com/alexnm/react-seed/blob/master/server/index.js

基于匹配函数,我将从所有组件树调用所有预取函数,然后等待 Promise.all让他们完成,然后触发 renderToString函数并返回 html。

在 RR4 中,我们只有 <ServerRouter>组件,所以我提出的当前解决方案是复制渲染代码: https://github.com/FortechRomania/react-redux-complete-example/blob/master/src/server/index.js

我也在使用 render <Match> 上的函数标记以触发预取操作。这很丑陋,并且在我要使用预取数据呈现的页面的父组件中引入了各种依赖项。

我在这里错过了什么?有没有人为这种情况找到更好的解决方案?我还没有发现任何有用的东西。

最佳答案

关于javascript - 使用 react-router v4 和预取数据进行服务器渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41788821/

相关文章:

javascript - 获取自动填充输入的值 - Jquery

javascript - ReactJS:更新对象状态内的数组不会触发重新渲染

javascript - 使用 React/React Router 处理网站关闭/离开页面事件的惯用方法

css - React Router 如何在父元素上设置过渡

reactjs - 使用React Router将多个路径路由到同一组件

javascript - 像 Optimizely 一样访问跨域 iframe 元素

Javascript:如何从网络应用程序使用 Google API 访问*特定用户*数据?

javascript - Controller 中未识别注入(inject)的服务

javascript - 如何使 @connect 装饰器与 redux-saga 一起工作?

reactjs - 在 react 单页应用程序中按后退按钮重定向到欢迎页面