web-dev-qa-db-ja.com

ionic 2ページが完全に読み込まれたときに関数を実行する

ionic 2ページが完全に読み込まれたときを判断する方法はありますか?ページhtmlのすべてが読み込まれたときに、ページにHTMLを挿入する必要があります。理想的には、ページがロードされたときに実行される@pageクラスの関数。

現時点では、Vineを含むiframeをdivコンテナに挿入しています。 iOS 9を実行しているiPhone 5でアプリを実行すると、同じVineがコンテナに合わせてサイズ調整する場合と、サイズ調整しない場合があります。これはタイミングが原因であると推測しています(Vine iframeのソースはhttpリクエストの一部として受信されます)。

11
Bill Noble

ionViewDidLoadメソッドを使用できます。

@Page({
  templateUrl: 'build/pages/somepage/somepage.html'
})
export class SomePage {
  constructor() {
    // ...
  }

  ionViewDidLoad() {
    // Put here the code you want to execute
  }
}

2016年11月18日としてのライフサイクルイベントは次のとおりです。

  • ionViewDidLoad
  • ionViewWillEnter
  • ionViewDidEnter
  • ionViewWillLeave
  • ionViewDidLeave
  • ionViewWillUnload
  • ionViewCanEnter

Ionic 2は活発に開発されているため、状況は常に変化します。現在のライフサイクルイベントを確認する場合は、以下を参照してください。 https://ionicframework.com/ docs/v2/api/navigation/NavController /#lifecycle-events

34
artberri

ライフサイクルコールバック ngAfterViewInit() を使用して、最後にロードされたコンポーネントを使用できます(ルーティングによって異なります)。

4