[解決済み] ルーターナビゲートで同じページのngOnInitを呼び出さない
2022-08-23 12:20:15
質問
私は
router.navigate
を同じページで呼んでいます。この場合
ngOnInit()
は呼び出されません。これはデフォルトなのでしょうか、それとも他に何か追加する必要があるのでしょうか?
どのように解決するのですか?
を注入することができます。
ActivatedRoute
をサブスクライブし
params
constructor(route:ActivatedRoute) {
route.params.subscribe(val => {
// put the code from `ngOnInit` here
});
}
ルーターは、異なるルートに移動したときのみ、コンポーネントを破棄して再作成します。ルートパラメータやクエリパラメータのみが更新され、ルートが同じである場合、コンポーネントの破棄と再作成は行われません。
コンポーネントを強制的に再作成する別の方法として、カスタムの再利用戦略を使用することができます。以下も参照してください。 Angular2 ルーター 2.0.0 で、同じ url を異なるパラメータで読み込むとコンポーネントが再読み込みされない? (実装方法はまだあまり情報がないようです)
関連
-
[解決済み] Angular 4/5/6 グローバル変数
-
[解決済み] Angular Materialでのデフォルトのソート - ヘッダーのソート
-
[解決済み] 角度2 ngfor 最初、最後、インデックスループ
-
[解決済み] .tsファイルはTypeScriptのコンパイルの一部ですが、使用されていませんという警告を消すには?
-
[解決済み] Angular 4+ ngOnDestroy() サービス中 - observableを破壊する
-
[解決済み] AngularでEventEmitterに2つのパラメータを渡すには?
-
[解決済み] dataSource' は 'table' の既知のプロパティではないので、バインドできません。
-
[解決済み] Angularで、コントロールが作成された後、FormControlにバリデータを追加する方法は?
-
[解決済み] Angular / Angular Materialでmat-horizontal-stepperのステップをプログラムで移動させることは可能ですか?
-
[解決済み] Angular2 bodyタグにクラスを追加する
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] ng serve がファイルの変更を自動的に検出しない
-
[解決済み] パイプ ' ' が見つかりません。
-
[解決済み] formControlNameとFormControlの違いは何ですか?
-
[解決済み] angular-cliのビルドでカスタムファイルをインクルードするには?
-
[解決済み] angular-cliのパラメータ --base-href と --deploy-url の違いは何ですか?
-
[解決済み] 継承と依存性注入
-
[解決済み] Angular / Angular Materialでmat-horizontal-stepperのステップをプログラムで移動させることは可能ですか?
-
[解決済み] 文字列|ヌル'型の引数は、文字列'型のパラメータに代入できません。タイプ 'null' はタイプ 'string' に割り当てられません。
-
[解決済み] AngularでFormArrayからすべての項目を削除する
-
[解決済み] Karma/Jasmineのテストで「[object ErrorEvent] thrown」エラーが発生した場合、どのようにデバッグすればよいですか?