2017-12-26 48 views
0

リダイレクトに役立つwithRouterについての記事を一冊読みましたが、私の場合は動作しません。私がログアウトリンクにckickとき(私たちは、認証、外部アプリケーションで使用しているので)私は、メインアプリケーションの外にリダイレクトされる必要がありますが、withRouterと反応しないReact-router-domリダイレクトHOC(react-redux)

export default withRouter(connect(mapStateToProps, MapDispatchToProps)(Logout)) 

やリンク、または必要なURLへのHREFで、でも窓にリダイレクトしません。レンダリングされたアカウントコンポーネントから場所がリダイレクトされません。コンソールのエラーは発生しません。ブラウザの履歴にも表示されません。アカウントのページやそれだけで点滅しています。 どうすれば、私のアプリケーションから別の外部サイトにユーザーを反応Domルータ経由でリダイレクトできますか?

答えて

3

react-router-domは、SPA(シングルページアプリケーション)内にルートを作成できるパッケージです。第二は、リンクをクリックの動作をシミュレートする一方

window.location.replace("http://stackoverflow.com"); 
window.location.href = "http://stackoverflow.com"; 

最初は、HTTPリクエストの動作をシミュレートします:外部のWebサイトにリダイレクトするには、2つのオプションがあります。

+0

これは唯一の解決策であると思われます。ありがとう。 –

+0

このオプションの1つをcomponentWillUpdateまたは別の場所で使用する必要がありますか? –

+0

これはJSなのでどこでも使用できます。ログアウトボタンのクリックを処理する関数にそれらを入れるだけです。 –

関連する問題