reactjs - React-router "Cannot GET/*"除了根 url

标签 reactjs react-router

我愿意在我的应用程序中使用 React-router,并且我正在尝试 the example given in the doc首先,我在下面复制了它。现在当我去 localhost:3000/ ,我按预期看到“App”,但每隔一个页面,例如 localhost:3000/inbox返回“无法获取/收件箱”。我在这里缺少什么?

var About = React.createClass({
  render: function () {
    return <h2>About</h2>;
}});

var Inbox = React.createClass({
  render: function () {
    return <h2>Inbox</h2>;
}});

var App = React.createClass({
  render () {
    return (
      <div><h1>App</h1>
        <RouteHandler/>
      </div>
)}});

var routes = (
  <Route path='/' handler={App}>
    <Route path="about" handler={About}/>
    <Route path="inbox" handler={Inbox}/>
  </Route>
);

最佳答案

如果您使用的是webpack-dev-server,则有一个名为history-api-fallback的选项。如果设置为 true 404s 将回退到 /index.html

将选项添加到 Webpack 配置的 devServer 部分,如下所示:

devServer: {
    contentBase: 'app/ui/www',
    devtool: 'eval',
    hot: true,
    inline: true,
    port: 3000,
    outputPath: buildPath,
    historyApiFallback: true,
},

Webpack 文档链接:https://webpack.js.org/configuration/dev-server/

Github 上的

webpack-dev-server 文档:https://github.com/webpack/webpack-dev-server

关于reactjs - React-router "Cannot GET/*"除了根 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32098076/

相关文章:

javascript - 模拟由 react 钩子(Hook)返回的函数

reactjs - 关闭 webpack 上的热重载

javascript - React-router 子路径渲染未触发正确的组件

javascript - 我将如何在 react 测试库中测试 react 路由器路由参数?

reactjs - 主题深色将文本字段变为白色

reactjs - 如何在 Jest 中测试模拟函数的返回值

javascript - React 组件未使用 map 函数渲染

javascript - React router redux 链接更改路由,但不是组件

javascript - React-Router npm 包在控制台中给我警告? (不推荐使用 PropTypes)

javascript - 警告 : Failed prop type: Invalid prop 'component' supplied to 'Route' - react-router-dom