StringTemplate:HTML行格式(奇数/偶数)

时间:2017-04-03 07:28:04

标签: html stringtemplate

我是StringTemplate模板引擎的新手,想要用它来生成带有表的html文档。我想根据它是奇数还是偶数来改变表行的样式。我找到了关于stringtemplate-interest邮件列表的讨论,该列表描述了一般方法([stringtemplate-interest] Odd even row formatting)。

但我有一个额外的要求,打破了这种一般方法(我认为)。我想根据值的存在来渲染行。所以我正在使用条件表达式$if(expr)$。我的模板看起来像这样。

delimiters „$“,“$“
htmlTable(valueA, valueB, valueC, valueD) ::= <<
    <table>
        <tr styleClass='odd'><td>$valueA$</td></tr>
$if(valueB)$
        <tr><td>$valueB$</td></tr>
$endif$
        <tr styleClass='odd'><td>$valueC$</td></tr>
        <tr><td>$valueD$</td></tr>
    </table>
>>

在给定的模板中,我不能使用硬编码的styleClass属性,因为如果valueB参数不存在,它会使表格错误。

我的要求是否可以通过像StringTemplate这样的模板引擎实现,它专注于模型和视图的分离?或者在需求中是否有太多 model 在视图中实现它?我知道如何在其他模板引擎(即FreeMarker或Apache Velocity)中执行此操作,或者我可能会使用一些fancy CSS或javascript的东西,但我宁愿保持模型 - 视图分离并使用StringTemplates内部工具。

0 个答案:

没有答案