1. ルーティング関連オブジェクトRouter と RouterLink には、ナビゲーションという同じ機能があります。コントローラーではルーターが使用され、テンプレートでは RouterLink が使用されます。 2. ルーティングオブジェクトの場所1. ルートオブジェクト 設定はモジュール内にあります。ルートは構成情報のセットから構成され、各構成情報には少なくとも 2 つの属性 (パスとコンポーネント) が含まれます。 2. ルーターアウトレット テンプレート内 3.ルーターリンク テンプレート内のリンクを生成し、URLを変更する手順 4. ルーター コントローラーでは、ルートを切り替えるために Router オブジェクトの navigation メソッドを呼び出します。 5. アクティブルート ルーティング時に、データは URL を介して渡され、ActivatedRoute オブジェクトに保存されます。 3. ルーティング構成ng new --routingパラメータを使用すると、追加のapp-routing.module.tsファイルが生成されます。 '@angular/core' から NgModule をインポートします。 '@angular/router' から Routes、RouterModule をインポートします。 const ルート: ルート = []; @Ngモジュール({ インポート: [RouterModule.forRoot(routes)], エクスポート: [RouterModule] }) クラス AppRoutingModule をエクスポートします { } app.module.ts に自動的にインポートされます。 ホーム コンポーネントとコンポーネント コンポーネントの 2 つのコンポーネントを生成します。 const ルート: ルート = [ {path: '', コンポーネント: HomeComponent}, //パスが空です{path: 'product', コンポーネント: ProductComponent} ]; 知らせ: 1. パス設定はスラッシュで始めることはできず、path:'/product' として設定することもできません。 Angular ルーターは URL を解析して生成するため、/ で始まらないことで、複数のビュー間を移動するときに相対パスと絶対パスを自由に使用できます。 2. テンプレートにパスを記述する場合は、/ で始まる必要があります。 スラッシュと . を使用すると、ルート ルート (/) に移動するべきか、サブ ルート (./) に移動するべきかを示すためです。 / はルート ルートに移動し、ルート ルートが構成されているレイヤーから検索することを意味します。 <a [routerLink]="['/']">ホーム</a> 3. <router-outlet> の下のコンポーネントコンテンツを表示する 4. routerLinkパラメータは文字列ではなく配列です ルーティング中にパラメータを渡すことができるためです。 4. コード内のRouterオブジェクトをナビゲートするテンプレートにボタンを追加する <input type="button" value="製品の詳細" (click)="toProductDetails()"> コントローラー内を移動するには、router.navigate を使用します。 ナビゲート パラメータは、routerLink パラメータと同じように構成されます。 '@angular/core' から Component をインポートします。 '@angular/router' から Router をインポートします。 @成分({ セレクタ: 'app-root', テンプレート URL: './app.component.html', スタイル URL: ['./app.component.css'] }) クラスAppComponentをエクスポートします。 コンストラクター(プライベートルーター:Router){ } 製品の詳細(){ this.router.navigate(['/product']); } } ボタンをクリックすると、リンクをクリックするのと同じ効果が得られます。 5. 存在しないパスの設定ページが存在しないことを示すコード 404 コンポーネントを生成します。 最初に一致したルートが優先されるため、** ワイルドカード ルートは最後に配置する必要があります。 const ルート: ルート = [ { パス: '', コンポーネント: HomeComponent }, // パスは空です { パス: 'product', コンポーネント: ProductComponent }, { パス: '**'、コンポーネント: Code404Component } ]; 6. リダイレクトルーティングアドレスを別の指定されたコンポーネントにリダイレクトします www.aaa.com => www.aaa.com/products www.aaa.com/x => www.aaa.com/y ユーザーは x アドレスをブックマークしている可能性があります。 リダイレクトルーティングの使用 const ルート: ルート = [ { path: '', redirectTo : 'home', pathMatch:'full' }, // パスが空です { path: 'home', component: HomeComponent }, { パス: 'product'、コンポーネント: ProductComponent }, { パス: '**'、コンポーネント: Code404Component } ]; 7. ルーティング中にデータを渡す3つの方法があります 1. クエリパラメータでデータを渡す 2. ルーティングパスでデータを渡す ルーティング パスを定義するときは、パラメータ名を指定し、実際のパスにパラメータを渡す必要があります。 3. ルーティング構成でデータを渡す 以上がAngularルーティングの基本についての詳しい説明です。Angularルーティングの基本についてさらに詳しく知りたい方は、123WORDPRESS.COM内の他の関連記事もぜひご覧ください! 以下もご興味があるかもしれません:
|
<<: MySQLを定期的にバックアップしてQiniuにアップロードする方法
>>: Windows CVE-2019-0708 リモート デスクトップ コード実行脆弱性の再現問題
今日、vue3+viteプロジェクトの実践で、svgを使用する場合、以前の記述方法が使用できないこと...
この記事では、MySQL 8.0.14のインストールと設定のプロセスを記録しています。具体的な内容は...
目次導入例: イベントの委任記述方法1: イベント委譲書き方2: 各子要素がイベントをバインドする例...
目次バイナリ検索木 (BST) とは何ですか?バイナリツリーの基本的な走査(インオーダー、ポストオー...
相対的な長さの単位それら説明: 相対的な長さの単位。現在のオブジェクト内のテキストのフォント サイズ...
フロントエンドがインターフェースを要求すると、バックエンドでインターフェースが定義されます。ステータ...
このデータベースをダウンロードするには、多くの時間とトラフィックがかかります。踏み込んだ落とし穴で時...
目次概要1. フックの呼び出し順序2. onChangesフック3. 変更検出メカニズムとDoChe...
1. Windows 10 Enterprise Editionに付属する仮想マシンHyper-Vを...
以前、MySQLがローカルでは接続できるのにリモートでは接続できないという問題に遭遇したことがありま...
1. <div></div> と <span></spa...
この記事では、Jingdongの虫眼鏡効果を実現するためのJavaScriptの具体的なコードを紹介...
目次最近Reactを勉強していて、今は仕事でVueを使っています。学習の過程で、両者を比較して理解を...
目次序文: 1.DEFINERの簡単な紹介2. いくつかの注意点要約:序文: MySQL データベー...
MyISAM ストレージエンジンMyISAM ストレージ エンジンは、書き込みよりも読み取りが多く、...