React-router:除非刷新,否则组件不会呈现

React-router: components don't render unless refreshed

我有一个简单的应用程序组件,其中包含指向用户索引和缓存索引的链接(用于寻宝应用程序)。我的链接呈现良好,单击时它们会更改地址栏中的路径,但 DOM 中没有任何变化,直到我刷新页面,此时页面看起来应该是这样。这是怎么回事,传统的处理方式是什么?我也在使用 Redux,如果这有什么不同的话。以下是我的 App 组件返回的所有 JSX:

  <div>
    <nav>
      <Link to="/caches">Caches</Link>
      <Link to="/users">Users</Link>
    </nav>
    <div>
      <Switch>
      <Route exact path="/" component={Home}/>
      <Route path="/users" render={() => <div><UserList users={this.props.users}/></div>}/>
      <Route path="/caches" component={CacheList}/>
      </Switch>
    </div>
  </div>

这是 react-router-4 的常见问题。

在 react-redux connect 中使用 {pure: false} 或使用 withRouter HOC。

React router 4 does not update view on link, but does on refresh