我正在使用辅助方法haml_tag
捕获haml输出。但是,我想要捕获的特定元素是<meta/>
标记,因此我试图弄清楚如何获得自我关闭标记并包含属性。
haml_tag 'meta', '', name: :description, content: 'this is the description'
输出:
<meta content='this is the description' name='description'></meta>
但我想输出:
<meta content='this is the description' name='description' />
如果您传递了:/
的标记,那么应该可以自动关闭标记,但在这种情况下,属性不会被打印出来:
haml_tag 'meta', nil, :/, name: :description, content: 'this is the description'
输出:
<meta />
答案 0 :(得分:1)
如果你想要一个空标签,只需省略第二个参数:
haml_tag 'meta', name: :description, content: 'this is the description'
产生
<meta content='this is the description' name='description' />
请注意,由于meta
是默认的空元素之一,因此您不需要:/
参数,但如果您想要显式,则可以添加它:
haml_tag 'meta', :/, name: :description, content: 'this is the description'
产生与上面相同的输出。
Haml 4.0.5中存在一个错误,因为haml_tag
不尊重format
选项。在HTML格式中,输出应该是:
<meta content='this is the description' name='description'>