React-Router V4を使用してアプリケーションにルートを追加しようとしていますが、動作しません。基本的には、ブラウザのURLを更新していて、実際のアプリ内では何も変更しないで、history.push
という経路をプログラム的に変更しようとしています。React Router V4はURLを更新していますが、リフレッシュしていません(React、Redux)
注:私はreduxを使用しています。この問題に関する
だけ答えた質問は次のとおりです。ただし
React history.push() is updating url but not navigating to it in browser
、私は上記の質問への答えを試みた、それは私のために動作しません。ここ
は重要スニペットである:
最上位ファイル(index.js)経路
...
export default function ContentRouter() {
return <div className="content">
<Route exact path="/dashboard" component={TmpDashboard}/>
<Route exact path="/" component={() => {
return <h1>Home</h1>
}}/>
</div>
}
...
ReactDOM.render(
<BrowserRouter>
<Provider store={store}>
<App/>
</Provider>
</BrowserRouter>
, document.getElementById('root'));
...
コンポーネント
コンポーネント押す経路
...
this.handleGroupClick = (group) => {
this.props.history.push(`/groups/${group}`);
this.props.onOpenChange(false);
};
...
export default withRouter(connect(mapStateToProps, mapDispatchToProps(DrawerConnector))
ここに1つです: 'this.props.history.push' https://stackoverflow.com/questions/31079081/programmatically-navigate-using-react-router – admcfajn
@admcfajnそれは私が私が今 – AJC
をしようとしています一つですContentRouterにはDrawerConnectorがありません。それはどこで使用されていますか?これらのコンポーネントの1つの中にネストされていますか?トップレベルのコンポーネントでwithRouterを使用し、内部に を使用すると便利です。彼らの入れ子にされたコンポーネントのために、私は歴史を小道具として渡します。希望は意味をなさない。 –
Hossein