ベロシティマクロを使用してUIコンポーネントを作成する

速度のマクロを使用してUIコンポーネントを作成するのは良い考えですか? パフォーマンスとコードのメインテナンスについて

例えば、

<input type="text" name="$name" value="$value" />

私たちは

#text($name $value)
1

2 答え

あなたが単純に非表示にしたいと思う分岐論理か長いhtmlがあれば確かに便利です。 汎用ナビゲーションボタンフォーマッタが必要な場合は、コードを変更する必要があるのは1か所だけです。 IMHO、リファクタリングのために、移植性と新しいチームメンバーの方が簡単かもしれません。

これを説明するサンプルコードを次に示します。

#macro( viewCtrlButton $butId $butText $style)      ##style is optional
##configuration phase
    #if ($style == "save")        #set($type = "icon-buttons cat-save")
    #elseif($style == "cancel")   #set($type = "icon-buttons cat-cancel")
    #elseif($style == "next")     #set($type = "buttonz but_naviR")
    #end
    #if ($butId.contains(".")) 
        #set($link = "super_link") 
    #else 
        #set($link = "submit_link") 
    #end
##the actual code to construct
 
     $butText  
#end
1
追加された

「良い」、「悪い」、「状況に応じて」はありません。

多くのロジックが含まれていない限り、あるいは単純化の大量化がなければ、標準のタグをマクロやテンプレートに置き換えるだけではなく、余分な作業をするために十分な機能が必要になるでしょう。 、余分な時間、およびそれに値する余分な認知負荷。

(「認知負荷」とは、テンプレートファイルを見ていると、マクロを調べる必要がある場合、それが何をしているのかを完全に理解するのに時間がかかります。これは必ずしも悪いことではありません。それは関係ありません。)

0
追加された