[akabana-user:252] Re: [質問] 動的に追加されるコンポーネントに対するイベントハンドラ登録

YAMASHIRO Shunsuke [E-MAIL ADDRESS DELETED]
2010年 8月 9日 (月) 16:08:18 JST


山城です。

#いよいよ RC8 ですねー

<s:Button id="button1" includeIn="state1"/>
<s:Button id="button2" includeIn="state2"/>

のようなかたちにして、stateを切り替えで addEventListener されるか検証してみました。

(1) state1 -> state2 切り替え時

button1 の listener が remove され、button2 の listener が add されました。

(2) state2 -> state1 切り替え時

button2 の listener が remove されましたが、button 1 の listener が add されませんでした。

コードを追ってみたところ、先の件の isView に渡されている document が View ではなく、
Application に変わっているようです。これって、どのように対処したらいいんでしょう...。
自分では対応案が見つかりません...。

#yui-frameworks study 1 には参加させていただきます! :-)

以上です。

2010/7/29 arkw <[E-MAIL ADDRESS DELETED]>:
> ありかわです。
>
> 最新版のrc-5-snapshotで対応しました。
>
>> <s:states>
>>  <s:State name="state1"/>
>>  <s:State name="state2"/>
>> </s:states>
>>
>> <s:Button id="button1" includeIn="state1"/>
>> <s:Button id="button2" includeIn="state2"/>
>>
>> とした場合、default state でないほうのボタンのイベントハンドラが登録されません。
>>
>> ソースを追ってみたのですが、
>> YuiFrameworkContainer#isViewComponent に適合するコンポーネントでないと、自動的にイベントハンドラの
>> 登録はされないようでした。つまり、動的に追加する単位は、yui-frameworksのコンポーネント(VHAL)でないと
>>  customizer は通らない設計になっているという認識で正しいでしょうか。
>>
> そうですね。View単位でしかカスタマイザーは適用されません。
> includeInやExcludeFormなどは、使わない画面設計がいいかと思います。
>
> また、最新版のrc5では上記に対応されます。
>
> 以上です。
>
>
> 2010年7月28日17:52 YAMASHIRO Shunsuke <[E-MAIL ADDRESS DELETED]>:
>> 山城です。
>> Subjectの点で、ちょっと悩んでいます...。
>>
>> たとえば、
>>
>> <s:states>
>>  <s:State name="state1"/>
>>  <s:State name="state2"/>
>> </s:states>
>>
>> <s:Button id="button1" includeIn="state1"/>
>> <s:Button id="button2" includeIn="state2"/>
>>
>> とした場合、default state でないほうのボタンのイベントハンドラが登録されません。
>>
>> ソースを追ってみたのですが、
>> YuiFrameworkContainer#isViewComponent に適合するコンポーネントでないと、自動的にイベントハンドラの
>> 登録はされないようでした。つまり、動的に追加する単位は、yui-frameworksのコンポーネント(VHAL)でないと
>>  customizer は通らない設計になっているという認識で正しいでしょうか。
>>
>> 以上です。
>>
>> --
>> YAMASHIRO Shunsuke <[E-MAIL ADDRESS DELETED]>
>> _______________________________________________
>> akabana-user mailing list
>> [E-MAIL ADDRESS DELETED]
>> https://ml.seasar.org/mailman/listinfo/akabana-user
>>
> _______________________________________________
> akabana-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/akabana-user
>



-- 
YAMASHIRO Shunsuke <[E-MAIL ADDRESS DELETED]>


akabana-user メーリングリストの案内