最初のパラメータ渡し方法は、動的ルーティングパラメータ渡しです。リンクのパス属性を設定することで、ルートが渡されます。リンクタグをクリックすると、渡されたURL全体が上記のURLアドレスに表示されます。 <Link to='/home?name=dx'>ホーム</Link> 渡されたパラメータを実際に取得したい場合は、対応するサブコンポーネントで行う必要があります。 パラメータはユーザーに見えるので渡したり取得したりするのが面倒なのでお勧めできません 2番目のパラメータ渡し方法: 暗黙的なルーティングパラメータ渡し<リンク先={{ パス名: 'about', 州: { 名前: 'dx' } }}>について</Link> いわゆる暗黙的なルートパラメータの受け渡しとは、パラメータ情報が URL に公開されないことを意味します。リンク タグをクリックしたときに、渡されたパラメータを取得したい場合は、対応するルート コンポーネントの this.props.location.state を通じて取得できます。 渡されたパラメータを取得するには、推奨され、より安全で、より便利です 3番目のパラメータ渡し方法は、コンポーネント間でパラメータを渡すことです。いつ使うのですか? ルート タグがコンポーネント属性を通じてコンポーネントをアクティブ化する方法を変更します。通常、ルート タグはルーティングで使用されます。 //簡潔で明確ですが、親コンポーネントからパラメータを受け取ることができません <Route path='/test' component={Test}></Route> 変身後 <Link to='/test'>テスト</Link> <ルートパス='/test' レンダリング={(routeProps) => { //routePropsはルーティングコンポーネントによって渡されるパラメータ戻り値です( //元のルーティング コンポーネント パラメータの場合、親コンポーネントから子コンポーネントに渡されるパラメータのバインディングを展開します <Test {...routeProps} name='dx' age={18} /> ) }}></ルート> リンクタグをクリックすると、対応するテストサブコンポーネント内の this.props は、親コンポーネントから渡されたパラメータとルーティングコンポーネント自体のパラメータを取得します。パラメータを渡すのは少し面倒ですが、受け取るパラメータは非常に便利です。また、ルーティングコンポーネント自体のパラメータも引き続き受け取ることができますが、安全で、ユーザーには見えません。 4番目のパラメータ渡しメソッドwithRouter高階コンポーネントはルーティングパラメータを子コンポーネントにバインドします。 withRouter はいつ使用すればよいですか?サブコンポーネント内のルート パラメータを取得する場合は、ルート パラメータにバインドされるルート内のルート タグのサブコンポーネントを使用する必要があります。 ルートタグにバインドされていないサブコンポーネントのルーティングパラメータを取得する問題を解決するには、withRouterを使用する必要があります。 通常、「ホームページに戻る」や「前のレベルに戻る」などのボタンで使用されます。 'react' から React をインポートします。 './backhome' から BackHome をインポートします。 デフォルトのクラスTestをエクスポートし、React.Componentを拡張します。 与える () { コンソールログ(this.props) 戻る ( <div> これはテストの内容です //ホームページに戻るボタンはルートタグを通じてレンダリングされないので、サブコンポーネントの this.props にはルートパラメータがありません <BackHome>ホームページに戻る</BackHome> </div> ) } } 'react' から React をインポートします。 //ルートをインポートする 'react-router-dom' から {withRouter} をインポートします。 クラス BackHome は React.Component を拡張します { ゴーホーム = () => { //withRouter を使用する場合、コンポーネントは this.props にルーティングパラメータとメソッドを持っている必要があります //そうでない場合はエラーが報告されます this.props.history.push({ パス名: '/home', 州: { name: 'dx' //同様に、state を通じてホームルートに対応するコンポーネントにパラメータを渡すこともできます} }) } 与える () { 戻る ( <button onClick={this.goHome}>this.props.children</button> ) } } //エクスポート時に、withRouter タグを使用して backHome コンポーネントをパラメータとして渡します export default withRouter(BackHome) 使用する必要がある場合に非常に重要なので、やはりお勧めです。 これで、React ルーティングでパラメータを渡すいくつかの方法についての記事は終了です。React ルーティングでパラメータを渡す方法に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: MySQL の基本ステートメントを最適化するための 10 の原則の概要
>>: Linux カーネル デバイス ドライバー仮想ファイル システムに関する注意事項
序文最近、仕事の都合で、約 1000w の大量のデータを MySQL に挿入する必要があり、時間がか...
序文最近、プロジェクトで SQL Server を使用するプログラムに遭遇しました。このデータベース...
tomcat9をアンインストールする1. Tomcatのインストールはディレクトリに解凍するだけで...
この記事では、Linux環境でのmysql5.6.24自動インストールスクリプトコードを参考までに共...
目次関数パラメータの2つの主要なカテゴリ位置パラメータ可変長パラメータ名前空間要約する関数パラメータ...
HTML の select 要素に関する質問は、さまざまな場所で提起されています。最近のプロジェクト...
デフォルトでは、CentOS 7 上の PHP は apache または nobody として実行さ...
序文この記事では主に、curl を介してフォーム送信ログインを実装する方法について説明します。単一の...
序文「大規模なフロントエンド プロジェクト向け」に設計されたフロントエンド フレームワークである A...
Navicat は、データベースに接続するときにエラー 10060 および 1045 を報告します...
1. 丸い境界線: CSSコードコンテンツをクリップボードにコピー境界線の半径: 4px ; 2....
開発から導入まで自分で行うシングルページアプリケーションを開発する場合、ビルドを実行した後 npm ...
1. テスト環境名前バージョンセント7.6ドッカー18.09.06 2. オンラインインストールここ...
ファイル サーバーは、企業内で最も一般的に使用されるサーバーの一つであり、主にファイル共有を提供する...
さまざまな色の16進コード表[パート1] 赤とピンク、およびそれらの 16 進コード。 #99003...