React-Router:在浏览器中强制重新加载

React-Router: Force reload in browser

我们有一个使用 AWS Cloudfront 部署的整体 React SPA。我们正在尝试微型站点架构,其中 React 应用程序中的每个 route/path 都将作为独立应用程序构建和部署。为实现这一点,我们在 Cloudfront 中配置了基于路径的行为,以将请求路由到工作正常的相应来源。

由于其 SPA 性质,单体 React 应用程序中定义的所有路由都尝试在不向服务器发送请求的情况下加载页面。这会导致问题,因为我们希望从服务器加载一些路由,以便 CloudFront 可以正确路由请求。

我们如何强制 react-router 从服务器加载特定路由?

<Route exact path="/example" render={()=>console.log("load from server?");} />

好吧,react-router 路由发生在客户端级别,因此您不必使用它来获取 server-rendered 页面。

你需要的只是一个a标签,比如

<a href="/example" alt="A page you want to load">Label</a>