Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 将对象属性展开为标记属性_Html_Grails - Fatal编程技术网

Html 将对象属性展开为标记属性

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

在grails标记库中,我使用标记生成器创建如下所示的标记

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。展开图操作员完成这项工作