reactjs - 使用 BrowserRouter,如何刷新页面而不在生产服务器上获得 404?
问题描述
我了解 BrowserRouter 和 HashRouter 在 React Router v4 中是如何工作的。我目前正在使用 BrowserRouter,所以我没有得到如此丑陋的 URL。我见过很多例子,其中大部分已经过时了。我想知道如何在没有在生产服务器上获得 404 的情况下刷新路由上的页面?本质上是让 React 重新渲染组件。我还应该提到我正在使用 create react app 和提供的 react-scripts 来启动和构建项目。我在 webpack 中尝试了 historyApiFallback 的东西,它似乎没有做任何事情。
解决方案
如果您有一个简单的应用程序并且不想避免在服务器端渲染路由,您可以使用“React Snap”
https://www.npmjs.com/package/react-snap
配置后,它会将您的 Web 应用程序路由预呈现为静态 HTML。我将它用于我的许多 react+router 应用程序,我喜欢它。
推荐阅读
- javascript - 如何在字符串中每 3 个字符后插入连字符?
- sql - 如何表示与另一个实体具有相同关系的两个实体
- html5-video - 用于为 BigBluebutton 的一次会议中的用户设置最大网络摄像头访问权限的 API 调用
- javascript - 如何将复选框加1放入显示变量Javascript
- flutter - flutter_i18n 本地化代理设置
- reactjs - 在本机反应中抵消一
- spring - 如何从构建路径中删除休眠核心 jar
- javascript - “index.js?v=xxx”是干什么用的?
- r - 在 R 中将热图刻度从数字更改为月份
- java - 既然抽象类可以有公共构造函数,为什么不能实例化呢?