刷新后React App返回错误

时间:2017-09-21 13:46:56

标签: reactjs redux react-router-v4

我正在使用React Router v4创建React / Redux应用程序。它有一个简单的架构

--RootPage    path /
 --HomePage   path /h
   -Gallery   path /h/portfolio
   -Links     path /h/links
   -About     path /h/about

现在,每次刷新,如果我在第二级/ h /组合,或/ h /链接,或/ h / about,此错误net :: ERR_ABORTED。

enter image description here

如果我在根级别或/ h /级别上,刷新工作正常。我已将historyApiFallback: true添加到devServer,因此它不是那个问题。每次刷新时都必须始终转到/ root,这有点无益。这可能有什么问题?

这是我的路线

const mainRouter=(
    <Wrapper>
<Provider store={store} history={history}>
  <BrowserRouter>
      <div>
      <Route exact path="/" component={Home}/>
      <Route path="/h" component={HomePage}/>
       </div>
   </BrowserRouter>
    </Provider>
    </Wrapper>
  )

在主页

       <main>
          <Route path={`${this.props.match.path}/portfolio`}
          render={ ()=><Gallery {...this.props}/> } />
          <Route path={`${this.props.match.path}/about`} render={ ()=><About 
          {...this.props}/> }/>
          <Route path={`${this.props.match.path}/links`} render={ ()=><Links 
          {...this.props}/> }/>

      </main>

1 个答案:

答案 0 :(得分:11)

在快速服务器而不是devserver上重现同样的问题后,我得到了同样的错误并做了一些研究,我发现这个问题simple fix

我所要做的就是将<script src="js/app.bundle.js"></script>更改为<script src="/js/app.bundle.js"></script>

编辑:如果您使用的是Webpack-html-plugin,它仍然会出现同样的错误,我必须通过在webpack配置文件中添加output.path.publicPath:"/"来解决它