我想用freemarker构建一个动态列表。在(java)运行之前,我不知道会有多少级别。 它看起来应该是
<ul>
<li>....</li>
<li>....</li>
<ul>
<li>...</li>
</ul>
</ul>
我怎么能这样做?我只是得到一个带有x级别的静态列表...带有脏的嵌套循环,但有时我需要20-25个嵌套的ul
元素/级别。
我该如何动态地做到这一点?建议会很好:))
答案 0 :(得分:1)
使用freemarker这很容易做到,想想你将如何用Java进行递归。在这种情况下,您应该将每个模板视为一个函数,该函数具有可以使用的参数。
创建一个新模板,只处理列表的一个级别,然后如果存在另一个列表,则在此模板上再次调用render函数。
或者你可以使用宏,虽然这是我个人的偏好。
答案 1 :(得分:0)
使用macro进行递归调用。