2017-08-23 30 views
0

SPAにreact-routerを使用しています。私の場合は 、 ブラウザ履歴がある/home =>/somepage1 =>/another =>私はルート/changepasswordにいくつかのことを行うとき、私は/loginルートに移動し、以前のすべてのブラウザの履歴を消去したい/changepasswordReact-router-4によるすべてのブラウザの履歴の削除方法

この道を/loginにしてください。

どうすればこの問題を解決できますか?

+0

は、合法的なサウンドの最初のエントリになりたいcomponentWillMount機能で

this.props.history.index=0 

使用を削除... – cweiske

+0

@cweiskec私はnoobです、これについてもっと詳しく説明できますか? – Liuuil

+0

[ルータを動的に変更する方法](https://stackoverflow.com/questions/44137774/how-to-navigate-dynamically-using-reutrouterdom)の回答を確認してください。歴史。 –

答えて

0

私はそれを優雅にサポートしているとは思わない。しかし、履歴は変更可能ですので、いつでも手動で履歴を編集できます。ここではあなたがそれを行う方法の例です:

const history = this.props.history.entries 

// set first entry in history to mirror the last entry 
history[0] = history[history.length - 1] 

// remove all but first history entry 
history.length = 1 
0

すべての履歴エントリあなたは、これが

+0

ようこそStackOverflowへ。その中のコードだけの回答は、「低品質」なので削除のフラグが立てられがちです。質問への回答についてのヘルプセクションを読んで、あなたの答えにいくつかの解説を加えることを検討してください。 – Graham

関連する問題