HAML中的多行属性值

时间:2011-09-01 09:36:44

标签: html haml knockout.js

我正在使用KnockoutJS,它使用data-bind属性中的json字符串来指示绑定信息。我也喜欢使用HAML。

此字符串很快就会变得很长,例如: -

%ul#task-list.unstyled{"data-bind" => "template: { name : 'taskHierarchy', foreach : contexts.children(), afterAdd: function(elem) { $(elem).hide().slideDown() } }"}

解决方案是使用:plain过滤器,如下所示(与上面略有不同): -

:plain
  <div data-bind = "template: {
    name: 'twoLineResourceTemplate',
    foreach: resources,
    afterAdd: function(elem) { $(elem).hide().slideDown() }
  }">
  </div>

使用HAML构造而不是过滤器有更简洁的方法吗?

我尝试过使用竖线字符,但它似乎不适用于HAML属性。

谢谢!

2 个答案:

答案 0 :(得分:5)

我尝试了管道符号,它对我有用:

%ul#task-list.unstyled{"data-bind" => |
"template: { "                      + |
"name : 'taskHierarchy',"           + |
"foreach : contexts.children(),"    + |
"afterAdd: function(elem) {"        + |
"$(elem).hide().slideDown()"        + |
"} }"}                                |

答案 1 :(得分:-1)

您可以在KnockoutJS and Unobtrusive JavaScript

上试试此帖子