[mayaa-user:82] Re: [spec] Mayaa core プロセッサの追加

suga ko.suga @ gmail.com
2005年 12月 26日 (月) 06:49:03 JST


suga です。

05/12/26 に 小野 心<shin @ hotcore.jp> さんは書きました:
>  ちなみに、下記の書き方で、execプロセッサーにidを指定しない
> で、ifプロセッサーにidを指定する事は、処理的に可能なのでしょう
> か? forプロセッサーの中なら出来そうな気がしているのですが?
>
> > 現状で同様なことを少し定義しやすくすると、こうでしょうか。
> > <m:exec id="" script="${ var flag = ... }">
> >     <m:if test="${ flag }">
> > // 正の処理
> >     </m:if>
> >     <m:if test="${ !flag }">
> > // 偽の処理
> >     </m:if>
> > </m:exec>

exec でも for でも、id を指定せずに動作させることはできません。

これらプロセッサが呼ばれるのは、テンプレート側を処理するときに

    id を見つけた → 対応するプロセッサを実行

と処理されるためです。(xpath でも同様)


ですので、小野さんの意図で動作させるなら、判定結果をあらかじめ
m:beforeRender で変数にしておくことになります。
# あるいは Java 側

<m:beforeRender><![CDATA[
    var flag = ...;
]]></m:beforeRender>


<m:if id="a" test="${ flag }">
</m:if>

<m:if id="b" test="${ !flag }">
</m:if>

--
suga ( ko.suga @ gmail.com )


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