[mayaa-user:655] Re: replace属性に${***}を記述したい
原田昌知
[E-MAIL ADDRESS DELETED]
2008年 5月 8日 (木) 09:37:36 JST
原田です。
おお、それで十分です。
ありがとうございました。
suga さんは書きました:
> suga です。
>
> 引用の順番前後しますが
>
> 2008/5/7 原田昌知 <[E-MAIL ADDRESS DELETED]>:
>> 何をやりたいのかというと、テーブルのtrにIDをつけて、ifで表示条件を
>> 指定する際に、replaceも同条件で指定できると、falseのときは、trごと消えて、
>> trueのときは、trを残せます。
>
> ちょっと記述は増えますが、下記のように記述すれば実現できます。
>
> <m:if m:id="xxx" test="${...}">
> <m:echo><m:doBody/></m:echo>
> </m:if>
>
> if の中でも echo を使って元のタグを再現できるので、attribute との
> 組み合わせもできます。
> プロセッサをネストするため doBody が必須になるのがやや難点ですけど。
>
>
>> m:ifタグのreplace属性にスクリプトを記述したいのですが、現在は対応していませんね?
>> 対応は難しいでしょうか?
>
> こちらは現状では簡単ではありません。
>
> 内部的な話をすると、replace はビルド時に静的解決をしています。
> これを動的解決に変えることになりますので、すべてのプロセッサで
> 使える replace の (内部的) 動作を変更するのは結構大変です。
> if 限定なら難しくはないのですが、それは使う側としていびつかなと。
>
>
> ちなみに if と echo を組み合わせた echoIf という拡張プロセッサを
> 作る計画がありテスト実装もしたのですが、進んでいません (^^;
> http://suga.parfe.jp/td/index.cgi?date=20080303#p02
>
>
> # extensions サブプロジェクトの協力者募集中です。
>
mayaa-user メーリングリストの案内