如何使用StringTemplate迭代列表映射?

时间:2013-08-09 01:18:57

标签: html stringtemplate

我需要生成如下所示的HTML输出:

 - 2010
    - Item 1
    - Item 2
 - 2011
    - Item 9
 - 2012
    - item 6

我已经尝试了一张地图,即Map<String,List<String>>,但我无法弄清楚你将如何迭代它,即这不起作用:

<ul class="chevron">
$x:{y|
    <li>$y$</li><ul class="chevron">
        $y:{z|<li>$z.name$/li>}$
    </ul>
}$
</ul>

1 个答案:

答案 0 :(得分:3)

在YAML表示法中,如果变量x的内容(Map<String,List<String>>)类型为:

x:
  2010: [Item 1,Item 2]
  2011: [Item 9]
  2012: [Item 6]

以下将满足您的要求:

<ul>
$x.keys:{
k | <li>$k$</li>
  <ul>
    <li>$x.(k);separator="</li>
    <li>"$</li>
  </ul>
}$</ul>

请注意$x.(k)$符号。