有没有办法修改之前答案中的代码
import groovy.xml.MarkupBuilder
def writer = new StringWriter()
def builder = new MarkupBuilder(writer)
def awaiting = ['one', 'two', 'three']
builder.html {
ul {
awaiting.each {
li(it.toString())
}
}
}
println writer.toString()
这样,如果您添加标签而不是发送它 - 就像
builder.html{
tag{
awaiting.each{}
}
} return result
例如可以是“ol”或“ul”
最佳答案
您可以依赖 GString,并且可以通过其字符串值调用函数。
import groovy.xml.MarkupBuilder
def writer = new StringWriter()
def builder = new MarkupBuilder(writer)
def awaiting = ['one', 'two', 'three']
def tag = 'ol'
builder.html {
"$tag" {
awaiting.each {
li(it.toString())
}
}
}
println writer.toString()
关于Groovy 标记生成器标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3069614/