画面を初期表示するときにユーザロジックを呼び出す場合は、RCF.addLoadedListener関数またはRCF.addInitializedListener関数を利用します。
これらの関数を利用してイベントリスナを登録しておくと、任意のユーザロジックを実行することができます。
RCF.addLoadedListener関数は、以下のどちらかの方法の代わりに使用します。
HTMLの<body>タグにonloadアトリビュートを記述する
JavaScriptのwindowオブジェクトのonloadに関数を設定する
ただし、RCF.addLoadedListener関数は、Ajaxフレームワークの初期化が行われていないため、Ajaxフレームワークが提供するJavaScriptのAPIを利用することはできません。ユーザロジックやユーザデータの初期化などに利用してください。
RCF.addInitializedListener関数は、Ajaxフレームワークの初期化が完了しているため、Ajaxフレームワークが提供するJavaScriptのAPIを利用することができます。
以下に、RCF.addInitializedListener関数を利用して、イベントリスナの登録とFragmentContainer部品の有効化を行う例を示します。
<script type="text/javascript">
//<![CDATA[
myEvent = {
// イベントリスナを記述
};
RCF.addInitializedListener(function() {
rcf.event.EventRegistrar.registerEvents(myEvent, "myEvent"); // イベントリスナを登録
myFragmentContainer1.activate(); // FragmentContainerの有効化
myFragmentContainer2.activate(); // FragmentContainerの有効化
});
//]]>
</script>
(省略)
<div rcf:id="myViewStack" rcf:type="ViewStack" rcf:selectedIndex="0">
<div rcf:id="myFragmentContainer1" rcf:type="FragmentContainer" rcf:src="..."></div>
<div rcf:id="myFragmentContainer2" rcf:type="FragmentContainer" rcf:src="..."></div>
</div>UI部品でエラーが発生した場合の処理
UI部品でエラーが発生した場合は、RCF.addErrorListener関数に登録された関数が実行されます。
RCF.addErrorListener関数に登録する関数には、引数を1つだけ定義することができます。引数には、エラーの内容を格納したオブジェクトが渡され、errorプロパティを参照すると、エラーオブジェクトが取得できます。
以下に、RCF.addErrorListener関数を利用した例を示します。
<script type="text/javascript">
//<![CDATA[
RCF.addErrorListener(function(eventObject) {
// エラーオブジェクトを取得してアラートを表示
var message = eventObject.error.message;
if (!message) {
message = eventObject.error.toString();
}
alert("エラーが発生しました:" + message);
});
//]]>
</script>
(省略)