この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

コンポーネントの初期化時のアクションの呼び出し

コンポーネントを構築してから表示するまでの間にコンポーネントを更新したり、イベントを起動したりできます。

コンポーネントのソース

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 イベントでは、常にこの設定を使用する必要があります。