我使用Groovy方便的MarkupBuilder从各种源数据构建HTML页面。检测Groovy中的第一个和最后一个项每个{}关闭
我努力做的很好的一件事就是构建一个HTML表格,并将不同的样式类应用到第一行和最后一行。这可能是最好的一个例子来说明......
table() {
thead() {
tr(){
th('class':'l name', 'name')
th('class':'type', 'type')
th('description')
}
}
tbody() {
// Add a row to the table for each item in myList
myList.each {
tr('class' : '????????') {
td('class':'l name', it.name)
td('class':'type', it.type)
td(it.description)
}
}
}
}
在<tbody>
部分,我想设置类的<tr>
元素是根据在myList
当前项目是否是第一或不同的东西最后一项。
是否有一个很好的Groovy-ified方式来做到这一点,而不诉诸手动检查项目索引对列表大小使用像eachWithIndex{}
?
尼斯提示,不知道这些方法。 – xlson 2010-10-25 08:24:05
有用,谢谢。如上所述,在...... – tomtheguvnor 2010-10-25 11:08:29
之前没有看到过这些方法请记住,first()和last()仅适用于List,而不适用于Map或Set(按照http://groovy.codehaus.org/groovy-jdk /) – sbglasius 2010-10-26 07:34:37