如何在groovy中使用NodeBuilder模式动态设置节点属性
在使用NodeBuilder模式时,如何基于groovy中的条件设置动态节点属性 像下面这样如何在groovy中使用NodeBuilder模式动态设置节点属性,groovy,markup,builder,Groovy,Markup,Builder,在使用NodeBuilder模式时,如何基于groovy中的条件设置动态节点属性 像下面这样 def b = DOMBuilder.newInstance() b.div ( attribute: "value") { if (condition) { // Set div.dynamicAttribute to true here } } 最好在条件语句中引用当前元素,因为条件可能会出现在结构的深处。最简单的方法是在节点闭包之外计算动态属性的条件。例如: i
def b = DOMBuilder.newInstance()
b.div ( attribute: "value") {
if (condition) {
// Set div.dynamicAttribute to true here
}
}
最好在条件语句中引用当前元素,因为条件可能会出现在结构的深处。最简单的方法是在节点闭包之外计算动态属性的条件。例如:
if (condition) {
b.div(attribute: "value", dynamicAttribute: true) {
...
}
} else {
b.div(attribute: "value") {
...
}
}
或者,您可以事先创建属性映射:
def attributes = [attribute: "value"]
if (condition) {
attributes['dynamicAttribute'] = true
}
b.div(attributes) {
...
}
最简单的方法是计算节点闭包外部的动态属性的条件。例如:
if (condition) {
b.div(attribute: "value", dynamicAttribute: true) {
...
}
} else {
b.div(attribute: "value") {
...
}
}
或者,您可以事先创建属性映射:
def attributes = [attribute: "value"]
if (condition) {
attributes['dynamicAttribute'] = true
}
b.div(attributes) {
...
}