在Slim中处理数据属性的最佳方法
我正在评估Slim作为个人项目中HAML的替代品,而且看起来并不像HAML那样处理HTML5数据属性。 我希望有人可能会遇到这个问题,或者可能已经知道我的文档中还没有find的选项/语法。
HAML允许你简单地使用嵌套散列来定义HTML 5数据属性 ,如下所示:
%a{data: {key1: 'val', key2: 'val'}}
导致
<a data-key1='val' data-key2='val'></a>
Slim有多种方式
-
作为哈希
(如data = {a:1,b:2}将呈现为data-a =“1”data-b =“2”)将被连字符的属性
-
直接使用它,因为提到的“mu太短”很直观。
a data-title="help" data-content="foo"
-
使用Ruby代码。 我经常这样做,很less在上面。
= link_to 'foo', bar_path, data: {a: 'a', b: 'b'}
我更喜欢这种修复…
@products.each do |product| .module data-id=product.id
它正在为我工作
使用图示运算符:
h1#section-title*{'data-url'=>'test', 'data-id'=>'test'} = @project.name