Javascript 如何在使用React SSR时仅发出一个API请求?

Javascript 如何在使用React SSR时仅发出一个API请求?,javascript,reactjs,api,server-side-rendering,Javascript,Reactjs,Api,Server Side Rendering,我的应用程序必须进行API调用,该调用返回一个项目数组,这些项目被设置样式并呈现到屏幕上。为了使我的SSR渲染工作正常,我当然必须在服务器上发出API请求,但是当使用SSR时,您还必须在客户端上重新渲染(使用ReactDOM.hydrate),我在这里发出第二个API请求 由于API请求需要2秒以上的时间,因此执行2次是非常低效的。是否有一种解决方法,只执行一个请求,并以某种方式使用服务器和客户端上的数据?-redux文档中的直接内容。如果不使用redux,则需要实现非常类似的功能 回答后一个问

我的应用程序必须进行API调用,该调用返回一个项目数组,这些项目被设置样式并呈现到屏幕上。为了使我的SSR渲染工作正常,我当然必须在服务器上发出API请求,但是当使用SSR时,您还必须在客户端上重新渲染(使用ReactDOM.hydrate),我在这里发出第二个API请求

由于API请求需要2秒以上的时间,因此执行2次是非常低效的。是否有一种解决方法,只执行一个请求,并以某种方式使用服务器和客户端上的数据?

-redux文档中的直接内容。如果不使用redux,则需要实现非常类似的功能

回答后一个问题-如何避免向客户提出另一个请求?您只需检查数据是否存在:)

或者也许

componentDidMount() {
  if(this.props.data.length === 0) {
    this.props.fetchData();
  }
}

谢谢你的回答,我没有在我的应用程序中使用Redux,我甚至不必这样做。正如我所注意到的,他们只是将数据保存到我以前遇到的窗口中,因为数据根本不需要任何安全性,所以这对我来说是一个不错的选择。
componentDidMount() {
  if(this.props.data.length === 0) {
    this.props.fetchData();
  }
}