我有一个简单的应用程序组件,其中包含指向用户索引和缓存索引(用于地理藏宝应用程序)的链接。我的链接呈现良好,当单击时,它们会更改地址栏中的路径,但 DOM 中不会发生任何变化,直到我刷新页面,此时页面看起来应有的样子。这是怎么回事?处理它的传统方法是什么?我也在使用 Redux,如果这有什么区别的话。以下是我的应用程序组件返回的所有 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
关于reactjs - React-router:除非刷新,否则组件不会渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46018507/