【问题标题】:Multi-line attribute values in HAMLHAML 中的多行属性值
【发布时间】:2011-11-08 06:31:30
【问题描述】:

我正在使用 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 属性。

谢谢!

【问题讨论】:

    标签: html haml knockout.js


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

      你可以在KnockoutJS and Unobtrusive JavaScript上试试这个帖子

      【讨论】:

      • 为什么投反对票?我认为这是与使用 Knockout 工作的更简洁方式的完全相关的链接。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-28
      • 1970-01-01
      • 2013-07-26
      • 1970-01-01
      • 2011-12-07
      • 1970-01-01
      相关资源
      最近更新 更多