角度成し遂げるまず、実装方法についてはあまり言う必要はありません。フック関数を使用するには、定義時に対応するインターフェースを実装する必要があります。 エクスポートクラスListPageはOnInitを実装します{ コンストラクタ() {} ngOnInit() { // ここにコード } } 呼び出し順序1.コンストラクタ 最初に実行されるのはコンストラクタです。コンストラクタ実行時には、@Input や @ViewChild などの多くの変数は存在しません。関連する操作は ngOnInit に記述するのがベストです。 2. 変更時 現在のコンポーネント @Input/@Output のバインディング値が変更されたときにトリガーされます。 3. ngOnInit 最初の ngOnChanges が完了した後に呼び出されます。1 回だけ実行されます。 4. ngDoCheck 開発者が定義した変更検出。 5. ngAfterContentInit コンポーネントコンテンツが初期化されるときに1回実行される 6. ngAfterContentChecked コンポーネントに投影されたコンテンツは、ngDoCheck 呼び出しごとにトリガーされます。 7. ngAfterViewInit コンポーネントとそのサブコンポーネントビューが初期化されるときに一度実行されます。 8. ngAfterViewChecked コンポーネントとその子ビューでの各 ngDoCheck 呼び出しの後に発生します。 9. ngOnDestroy コンポーネントが破棄される前に呼び出されます。 知らせ
イオニック上記のリンクをクリックすると元の文書が表示されます。重要なポイントを強調します。 ライフサイクルは図に示されています。Angular が提供するライフサイクルに加えて、Ionic はいくつかのイベントを追加します。
ionViewWillEnterはngOnInitの後にトリガーされ、ionViewDidEnterはページ切り替えの遷移効果が終了した後にトリガーされます。
ionViewWillLeave が最初に呼び出され、新しいページへの遷移が成功するまで (新しいページの ionViewDidEnter がトリガーされた後)、ionViewDidLeave は呼び出されません。 ion-nav または ion-router-outlet を使用するコンポーネントは、OnPush 変更検出戦略を使用しないでください。これにより、ngOnInit などのライフサイクル フックがトリガーされなくなります。さらに、非同期に変更されたデータは正しくレンダリングされない可能性があります。 ionic はページのライフサイクルをどのように処理しますか?ionic で使用されるルーティング アウトレットは <ion-router-outlet /> です。これは Angular の <router-outlet /> を拡張し、モバイル デバイスでより優れたエクスペリエンスを提供できます。 あるページから新しいページにジャンプすると、Ionic は古いページを DOM に保存し、表示しないようにします。これにより、スクロール位置やページデータなど、前のページの状態を維持できるため、新しいページから前のページに戻るときに再読み込みする必要がなく、ページ遷移がよりスムーズになります。 ページはスタックから抜けたときにのみ破棄されるため、ngOnInit と ngOnDestroy がトリガーされるタイミングは想像どおりにならない可能性があります。
ルートガードIonic 3 には、ページに入る/離れることができるかどうかを判断するために使用する ionViewCanEnter と ionViewCanLeave という 2 つのフック関数がありました。これらは通常、アクセス権を制限したり、編集ページを離れる前に 2 次確認プロンプトをポップアップ表示したりするために使用されていました。これら 2 つの関数は非推奨になりました。Ionic 4 以降では、Angular の公式ルーティング ガードを使用します。 要約するAngular と Ionic のライフサイクルとフック関数に関するこの記事はこれで終わりです。Angular Ionic のライフサイクルとフック関数に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
>>: Linux での MongoDB のインストールに関するチュートリアル
body{font-size:12px; font-family:"宋体";}...
進捗バーがスムーズではないフロントエンドを学ぶ学生のほとんどは、オーディオプレーヤーやビデオプレーヤ...
DPlayer.jsビデオプレーヤープラグインは使いやすい主な用途: ビデオの再生、監視の開始、終了...
1. Tomcatのインストールパスを作成する mkdir /usr/local/tomcat 2....
目次コンポーネントの分解左パネル右パネル入力パラメータの分解小道具スロット具体的な実装ドラッグする方...
導入:この記事では主に、Linux システムで IPV6 接続をサポートするように MySQL を構...
前の記事で説明したフォームの自動入力の問題を解決した後、新しい問題が発生しました。ページの一部のスタ...
ステップ1:setting.pyでデータベースを変更する # データベースを構成する DATABAS...
HTML は、Baidu 百科事典のナビゲーション ドロップダウン メニュー機能を模倣します。具体的...
1.ページを XML タイプとして宣言しないでください。ページでは UTF-8 または UTF-16...
序文現在、私はコースウェア PPT のオンライン プレビューを必要とする高品質のコースに取り組んでい...
最近、サーバーのストレステストを再度行う必要が出てきました。ここでは、最近学んだ見積もりスキームと見...
1. es起動コマンド: docker run -itd -e TAKE_FILE_OWNERSHI...
このセクションでは、その他の重要かつ興味深い W3C アクティビティの概要を説明します。このセクショ...
要約する1. 類似点どちらも、ターゲット関数が実行されると内部の this ポインターを変更できます...