Aurelia-コンポーネントのライフサイクル

Aureliaは、コンポーネントのライフサイクルメソッドを使用してコンポーネントのライフサイクルを操作します。この章では、これらの方法を示し、コンポーネントのライフサイクルについて説明します。

  • constructor()−コンストラクターメソッドは、クラスで作成されたオブジェクトを初期化するために使用されます。このメソッドが最初に呼び出されます。このメソッドを指定しない場合、デフォルトのコンストラクターが使用されます。

  • created(owningView, myView)−これは、ビューとビューモデルが作成され、コントローラーに接続されると呼び出されます。このメソッドは2つの引数を取ります。1つ目は、コンポーネントが宣言されているビューです。(owningView)。2つ目はコンポーネントビューです(myView)

  • bind(bindingContext, overrideContext)−この時点で、バインディングが開始されています。最初の引数は、コンポーネントのバインディングコンテキストを表します。2つ目はoverrideContext。この引数は、コンテキストプロパティを追加するために使用されます。

  • attached() −コンポーネントがDOMにアタッチされると、attachedメソッドが呼び出されます。

  • detached() −この方法は反対です attached。コンポーネントがDOMから削除されたときに呼び出されます。

  • unbind() −最後のライフサイクルメソッドは unbind。コンポーネントがバインドされていないときに呼び出されます。

ライフサイクルメソッドは、コンポーネントをより高度に制御したい場合に役立ちます。コンポーネントのライフサイクルの特定の時点でいくつかの機能をトリガーする必要がある場合に、これらを使用できます。

すべてのライフサイクルメソッドを以下に示します。

app.js

export class App {
   constructor(argument) {
      // Create and initialize your class object here...
   }

   created(owningView, myView) {
      // Invoked once the component is created...
   }

   bind(bindingContext, overrideContext) {
      // Invoked once the databinding is activated...
   }

   attached(argument) {
      // Invoked once the component is attached to the DOM...
   }

   detached(argument) {
      // Invoked when component is detached from the dom
   }

   unbind(argument) {
      // Invoked when component is unbound...
   }
}