服务器回退和带有 react-router 和 url 参数的嵌套路由
server fall back and nested routes with react-router and url parameters
在我的 React 应用程序中,我将 react-router 与 BrowserRouter
一起使用。
我的 webpack 文件有
devServer.historyApiFallback: true
我有一个
<Route path='/details/:parameter' />
在应用程序中导航时,回退和路线都按预期工作。
但是,如果我在 /details/:parameter
的路线上并刷新,应用程序会中断并在控制台中告诉我找不到
/details/webpack_bundle.js
但是浏览器中的 url 仍然包含正确的路由及其参数。
我希望找到一个优雅的解决方案。任何解释为什么会这样的行为表示赞赏。
打开您的控制台并检查您是否收到意外令牌错误“<”
这可能是因为在索引文件中您在 bundle.js 之前缺少斜线 '/'。将其更改为 <script src='/bundle.js'><script>
查看此答案:Express.js, Unexpected token <
重复问题:参见 。
我在 webpack 中使用 HTML Webpack 插件,这是我找到的解决方案。
webpackConfig.output.publicPath = '/'
这会从根目录加载包。
在我的 React 应用程序中,我将 react-router 与 BrowserRouter
一起使用。
我的 webpack 文件有
devServer.historyApiFallback: true
我有一个
<Route path='/details/:parameter' />
在应用程序中导航时,回退和路线都按预期工作。
但是,如果我在 /details/:parameter
的路线上并刷新,应用程序会中断并在控制台中告诉我找不到
/details/webpack_bundle.js
但是浏览器中的 url 仍然包含正确的路由及其参数。
我希望找到一个优雅的解决方案。任何解释为什么会这样的行为表示赞赏。
打开您的控制台并检查您是否收到意外令牌错误“<”
这可能是因为在索引文件中您在 bundle.js 之前缺少斜线 '/'。将其更改为 <script src='/bundle.js'><script>
查看此答案:Express.js, Unexpected token <
重复问题:参见
我在 webpack 中使用 HTML Webpack 插件,这是我找到的解决方案。
webpackConfig.output.publicPath = '/'
这会从根目录加载包。