Html 将对象属性展开为标记属性
在grails标记库中,我使用标记生成器创建如下所示的标记Html 将对象属性展开为标记属性,html,grails,Html,Grails,在grails标记库中,我使用标记生成器创建如下所示的标记 a(href: '#', class: 'show-modal', properties) { mkp.yield '+' } 在本例中,属性是一组格式化的对象属性:{data internet=true,data desc=Lorem ipsum} 我需要将属性扩展为html5数据属性。得到这样的东西 这是一个grails标记库示例: def test = { attrs -> MarkupBuilder m
a(href: '#', class: 'show-modal', properties) {
mkp.yield '+'
}
在本例中,属性是一组格式化的对象属性:{data internet=true,data desc=Lorem ipsum}
我需要将属性扩展为html5数据属性。得到这样的东西
这是一个grails标记库示例:
def test = { attrs ->
MarkupBuilder markupBuilder = new MarkupBuilder(out)
Map properties = ['data-internet': true, 'data-desc': 'Lorem ipsum...']
markupBuilder.a(href: '', properties) {
mkp.yield 'More info'
}
}
从视图中渲染时,我得到以下结果:
我期待着:
感谢您的时间和一些想法您可以使用“扩展贴图”操作符打开贴图并传递每个条目,就像它是一个参数一样:
markupBuilder.a(href: '', *:properties) {
mkp.yield '+'
}
您能否更改您的示例,使其能够运行并显示您所获得的输出?谢谢@tim_yates。我刚刚在一台计算机上添加了一个sampleNot,但是您是否尝试了扩展映射操作符:
markupBuilder.a(href:'',*:properties)
再次感谢tim。展开图操作员完成这项工作