如何将父类应用于所有BrowserRouter路由?

时间:2018-10-14 23:24:09

标签: reactjs react-redux react-router react-router-dom

我正在尝试做的简化版本如下:

class App extends Component {
  render() {
    return (
      <BrowserRouter>
        <div className="randomClassName">
          <Switch>
            <Route exact path="/" component={Dashboard} />
          </Switch>
        </div>
      </BrowserRouter>
    );
  }
}

此模式在开发中可以完美地工作,但是在为生产而构建时,它会挂载初始路径“ /”。

在这种情况下,父类将表示一些可调整的样式信息,这些信息是从数据库中提取的,我知道有npm包可用于直接操作head或style组件。但是,我真的很想知道为什么这不起作用以及为什么它仅在构建配置中发生。

1 个答案:

答案 0 :(得分:0)

尝试以以下方式使用重定向。它实际上取决于服务器配置,即它配置为服务index.html的方式。您可以在注释中共享在dev env和prod env中使用的服务器详细信息吗?同时,下面应解决此问题。

<BrowserRouter>
        <div className="randomClassName">
          <Switch>
            <Route exact path="/dashboard" component={Dashboard} />
            <Redirect exact from="/" to="/dashboard" />
          </Switch>
        </div>
      </BrowserRouter>