我的React应用程序正在使用带路由器的客户端路由,并将代理服务器设置为我的NodeJS服务器 .

浏览页面不会导致任何问题 .

但是,如果我手动输入URL到路由,然后使用浏览器的后退/前进按钮导航到任何其他动态路由,那么不是渲染组件,而是显示我从ExpressJS REST API返回的JSON .

Here's a demonstration of my problem

这是我的React Routes:

<Switch>
  <Route exact path="/" component={Home} />
  <Route exact path="/login" component={UserMain} />
  <Route exact path="/search/:query" component={Search} />
  <Route exact path="/search" component={Search} />
  <Route exact path="/:username/:item" component={SingleItemPage} />
  <Route exact path="/:username" component={Profile} />
  <Route path="*" component={Home} />
</Switch>