0
当我以编程方式尝试更改视图时,它只会更改url,而不会查看。React路由器v4不会切换视图
我有什么:
import createHistory from 'history/createBrowserHistory';
const history = createHistory();
我绑定点击收听到一些ELEM:
<div onClick={this.navigateMeToHome}>To Home</div>
而且当我听到这样的:
navigateMeToHome =() => {
history.push('/')
}
地址已更改为家庭地址,但路由视图仍然相同。
什么是错,我该如何解决这个问题?
UPD: 这部分outsiteSwitсh:
<div>
<BrowserRouter>
<div>
<Header/> <=== This guy.
<div className="container">
<div className="app">
<Switch>
<Route exact path="/" render={props => <Home {...props}/>}/>
<Route path="/search" component={Search}/>
</Switch>
</div>
</div>
</div>
</BrowserRouter>
</div>
首先,您不需要在react-router v4中使用此命令:'history/createBrowserHistory'中的import createHistory; const history = createHistory();'。其次,你可以分享'navigateMeToHome'所在的类/函数吗? – Win
是的,我知道,我可以浏览this.props.history.push('/别处')。 问题是我的Menu类不是Route组件。 – WebArtisan
你可以分享代码吗?如果你的类不是一个Route组件,你可以使用'withRouter()'来为它提供一个与Route组件相同的道具。 – Win