1. ホーム
  2. reactjs

[解決済み] リアクトルーターで前のパスを検出する?

2023-07-02 16:06:02

質問

react routerを使用しています。どこから来たのか、前のページ(同じアプリ内)を検出したいのです。私は私のコンテキストでルータを持っています。しかし、私はルータオブジェクトに"previous path"またはhistoryのようなプロパティを見ることはありません。どうすればよいのでしょうか?

どのように解決するのですか?

前のパスを componentWillReceiveProps というライフサイクルメソッドで保存できます。で提供されている例と非常に近いロジックです。 トラブルシューティングセクション react-router のドキュメントを参照してください。

<Route component={App}>
  {/* ... other routes */}
</Route>

const App = React.createClass({
  getInitialState() {
    return { prevPath: '' }
  },

  componentWillReceiveProps(nextProps) {
    if (nextProps.location !== this.props.location) {
      this.setState({ prevPath: this.props.location })
    }
  }
})

そして最近は、国からアクセスする