No Results
Search Tips:
- Please consider misspellings
- Try different search keywords
コンポーネントの初期化時のアクションの呼び出し
コンポーネントを構築してから表示するまでの間にコンポーネントを更新したり、イベントを起動したりできます。
コンポーネントのソース
1swfobject.registerObject("clippy.codeblock-0", "9");<aura:component>
2 <aura:attribute name="setMeOnInit" type="String" default="default value" />
3
4 <aura:handler name="init" value="{!this}" action="{!c.doInit}"/>
5
6 <br/>
7
8 <p>This value is set in the controller after the component initializes and before rendering.</p>
9
10 <br/>
11 <p><b>{!v.setMeOnInit}</b></p>
12
13</aura:component>
14クライアント側コントローラのソース
1swfobject.registerObject("clippy.codeblock-1", "9");({
2 doInit: function(cmp) {
3 // Set the value. This is not a very interesting sample as it just sets an attribute
4 // but you could fire an event here instead
5 cmp.set("v.setMeOnInit", "controller init magic!");
6 }
7})
8コンポーネントのソースを見て、どのように機能するのかを確認しましょう。重要なのは次の行です。
1swfobject.registerObject("clippy.codeblock-2", "9");<aura:handler name="init" value="{!this}" action="{!c.doInit}"/>これで、コンポーネントの init イベントハンドラが登録されます。init は、すべてのコンポーネントに送信される定義済みイベントです。コンポーネントが初期化されたら、コンポーネントのコントローラで doInit アクションがコールされます。このサンプルでは、コントローラアクションで属性値を設定していますが、イベントの起動などの処理を実行することもできます。
value="{!this}" を設定すると、これ自体が値のイベントとしてマークされます。init イベントでは、常にこの設定を使用する必要があります。