[解決済み] 子ルートから親ルートに移動するにはどうしたらいいですか?
2022-10-27 06:54:06
質問
私の問題は非常に古典的です。私はアプリケーションのプライベートな部分を持っていて、それは
login form
. ログインが成功すると、管理アプリケーションの子ルートに移動します。
私の問題点は、ログイン時に
global navigation menu
でルーティングしようとするからです。
AdminComponent
でルーティングしようとするからです。
AppCompoment
. だから、私のナビゲーションは壊れています。
もう一つの問題は、誰かがURLに直接アクセスしたい場合、私は親の "login" ルートにリダイレクトしたいことです。しかし、私はそれを動作させることができません。この 2 つの問題は似ているような気がします。
どうすればいいのでしょうか?
どのように解決するのですか?
リンク/HTMLが必要ですか、それとも必須/コードのルーティングが必要ですか?
リンク : RouterLink ディレクティブは、提供されたリンクを常に現在の URL への差分として扱います。
[routerLink]="['/absolute']"
[routerLink]="['../../parent']"
[routerLink]="['../sibling']"
[routerLink]="['./child']" // or
[routerLink]="['child']"
// with route param ../../parent;abc=xyz
[routerLink]="['../../parent', {abc: 'xyz'}]"
// with query param and fragment ../../parent?p1=value1&p2=v2#frag
[routerLink]="['../../parent']" [queryParams]="{p1: 'value', p2: 'v2'}" fragment="frag"
RouterLinkの場合、インポートして使用することを忘れないでください。
directives
の配列をインポートして使用することを忘れないでください。
import { ROUTER_DIRECTIVES } from '@angular/router';
@Component({
directives: [ROUTER_DIRECTIVES],
命令形
: は
navigate()
メソッドでは、出発点(すなわち
relativeTo
パラメータ) が必要です。何も提供されない場合、ナビゲーションは絶対的なものです。
import { Router, ActivatedRoute } from '@angular/router';
...
constructor(private router: Router, private route: ActivatedRoute) {}
...
this.router.navigate(["/absolute/path"]);
this.router.navigate(["../../parent"], {relativeTo: this.route});
this.router.navigate(["../sibling"], {relativeTo: this.route});
this.router.navigate(["./child"], {relativeTo: this.route}); // or
this.router.navigate(["child"], {relativeTo: this.route});
// with route param ../../parent;abc=xyz
this.router.navigate(["../../parent", {abc: 'xyz'}], {relativeTo: this.route});
// with query param and fragment ../../parent?p1=value1&p2=v2#frag
this.router.navigate(["../../parent"], {relativeTo: this.route,
queryParams: {p1: 'value', p2: 'v2'}, fragment: 'frag'});
// navigate without updating the URL
this.router.navigate(["../../parent"], {relativeTo: this.route, skipLocationChange: true});
関連
-
[解決済み] 現在のルートを取得する方法
-
[解決済み] ng serve がファイルの変更を自動的に検出しない
-
[解決済み] Angular 2: 反応するフォームコントロールの反復処理
-
[解決済み] Angular Materialでのデフォルトのソート - ヘッダーのソート
-
[解決済み] Angular2でNgForがPipeでデータを更新しない。
-
[解決済み] Karma/Jasmineのテストで「[object ErrorEvent] thrown」エラーが発生した場合、どのようにデバッグすればよいですか?
-
[解決済み] Error: モジュールによってインポートされた予期しない値 'undefined'。
-
[解決済み] ExpressionChangedAfterItHasBeenCheckedError: チェックされた後に、式が変更されました。以前の値: 'undefined'
-
[解決済み] コンストラクタ注入を行わずにサービスのインスタンスを取得する
-
[解決済み] 64進数の文字列を角(2+)でエンコードおよびデコードする。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Angular 2におけるEventEmitter.next()とEventEmitter.emit()の相違点
-
[解決済み] Angular Materialでのデフォルトのソート - ヘッダーのソート
-
[解決済み] 角度2 ngfor 最初、最後、インデックスループ
-
[解決済み] 別のプロセス(id #######)が現在 ngcc を実行しています。
-
[解決済み] AngularでFormArrayからすべての項目を削除する
-
[解決済み] RxJSのmap演算子でエラーを出す方法 (angular)
-
[解決済み] Karma/Jasmineのテストで「[object ErrorEvent] thrown」エラーが発生した場合、どのようにデバッグすればよいですか?
-
[解決済み] 遅延のあるobservableを作成するには?
-
[解決済み] Angular 2で入力タグのファイルタイプで選択されたファイルをリセットする方法は?
-
[解決済み] Angular2 formGroupに値を設定する