React Router 5.1.0 はページジャンプナビゲーションを実装するために useHistory を使用します

React Router 5.1.0 はページジャンプナビゲーションを実装するために useHistory を使用します

React Router v4では、

  1. ルータコンポーネント
  2. タグを使用する

1. withRouterコンポーネントを使用する

withRouterコンポーネントは、履歴オブジェクトをコンポーネントのプロパティとして挿入します。

'react' から React をインポートします
'react-router-dom' から { withRouter } をインポートします。
'antd' から { Button } をインポートします

エクスポートconst ButtonWithRouter = withRouter(({ history }) => {
  console.log('履歴', 履歴)
  戻る (
    <ボタン
      タイプ='デフォルト'
      onClick={() => { history.push('/new-location') }}
    >
      クリックしてください!
    </ボタン>

  )
})

画像.jpg

import { ButtonWithRouter } from './buttonWithRouter'

または:

const ButtonWithRouter = (props) => {
  コンソールログ('props', props)
  戻る (
    <ボタン
      タイプ='デフォルト'
      onClick={() => { props.history.location.push('/new-location') }}
    >
      クリックしてください!
    </ボタン>

  )
}

デフォルトのエクスポート withRouter(ButtonWithRouter)

画像.jpg

インポート: import ButtonWithRouter from './buttonWithRouter'

2. ルートタグを使用する

ルート入口

画像.jpg

ルート コンポーネントは、場所の一致にのみ使用されるわけではありません。 パスなしでルートをレンダリングすることができ、ルートは常に現在の場所と一致します。 Route コンポーネントは withRouter と同じプロパティを渡すため、履歴プロパティを通じて履歴メソッドにアクセスできます。

それで:

エクスポートconst ButtonWithRouter = () => (
  <ルートレンダリング={({ history }) => {
    console.log('履歴', 履歴)
    戻る (
      <ボタン
        タイプ='ボタン'
        onClick={() => { history.push('/new-location') }}
      >
        クリックしてください!
      </ボタン>
    )
  }} />
) 

画像.jpg

React Router 5.1.0はuseHistoryを使用します

React Router v5.1.0からuseHistoryフックが追加されました。React >16.8.0を使用している場合は、useHistoryを使用してページジャンプを実現できます。

エクスポートconst ButtonWithRouter = () => {
  定数履歴 = useHistory();
  console.log('履歴', 履歴)
  戻る (
    <ボタン
      タイプ='ボタン'
      onClick={() => { history.push('/new-location') }}
    >
      クリックしてください!
    </ボタン>
  )
}

画像.jpg

React Router 5.1.0 の useHistory を使用したページジャンプナビゲーションの実装に関するこの記事はこれで終わりです。ReactRouter useHistory ページジャンプナビゲーションに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き閲覧してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • React高階コンポーネントを使用してパンくずナビゲーションを実装する例
  • Android 開発用 React ナビゲーション ナビゲーション バーのスタイル調整 + 下隅のメッセージ プロンプト
  • React Native react-navigation ナビゲーションの使用法の詳細
  • react-navigation を使用した React Native でのクロスタブルーティング処理の詳細な説明
  • React Nativeのトップナビゲーションとボトムナビゲーションの使い方のヒントを詳しく説明
  • ページジャンプナビゲーションに react-navigation を使用する React-native の例
  • Reactはナビゲーションバーの二次リンクを実現する

<<:  HTML に埋め込まれた Flash HTML ウェブページ コードに Flash ファイルを埋め込むソリューション (パート 1)

>>:  MySQLはイベントを使用してスケジュールされたタスクを完了します

推薦する

ウェブページの画像の回転を実現するjs

この記事では、Webページの画像の回転を実現するためのjsの具体的なコードを参考までに共有します。具...

CSS中級者向けアダプティブレイアウトの5つのソリューションの詳細な説明

序文ページを作っていく上で、ページレイアウトに関する内容に遭遇することが多く、面接でも聞かれることも...

Centos 7 システムの Tomcat サーバーの詳細な分析

目次1. tomcatの起源1. Tomcat アプリケーションのシナリオ2. Tomcatに必要な...

データベースマルチテーブル接続クエリの実装方法の詳細説明

データベースマルチテーブル接続クエリの実装方法の詳細説明結合演算子を使用して複数のテーブルクエリを実...

MySQLデータベースの共通操作スキルのまとめ

この記事では、MySQL データベースの一般的な操作テクニックをまとめます。ご参考までに、詳細は以下...

MySQL シリーズ 9 MySQL クエリ キャッシュとインデックス

目次チュートリアルシリーズ1. MySQL アーキテクチャクエリキャッシュキャッシュされないクエリ:...

MySQL 8.0.23 のインストールと設定方法のグラフィックチュートリアル (Win10 の場合)

この記事では、MySQL 8.0.23のインストールと設定方法を参考までに紹介します。具体的な内容は...

MySQLのスケジュールタスクが正常に実行できない原因の分析と解決

目次序文原因分析と解決策スケジュールされたタスクを迅速に実行する要約する序文データベースのスケジュー...

CSS3 で画像ドロワー効果を実装するためのサンプル コード

いつものように、まずは画像効果を投稿しましょう: このエフェクトの原理は非常にシンプルです。CSS3...

Nginx は gzip 圧縮に基づいてアクセス速度を向上します

1. nginx はなぜ gzip を使用するのですか? 1. 圧縮の役割:ページがgzipで圧縮さ...

jQuery タグセレクターの適用例の詳細な説明

この記事では、jQueryタグセレクターアプリケーションの具体的なコードを例として紹介します。具体的...

Linux telnetコマンドの使用

1. はじめにtelnet コマンドは、リモート ホストにログインするために使用されます。これは、T...

React HTML で react を使用する 2 つの方法

基本的な使い方 <!DOCTYPE html> <html lang="...

MySQL シリーズ 8 MySQL サーバー変数

チュートリアルシリーズMySQL シリーズ: MySQL リレーショナル データベースの基本概念My...

ReactにおけるRefの相互利用の詳細な説明

目次1. まずRefとは何かを説明しましょう2. フックでのrefの使用1. HTMLDomフックで...