0

我想在 HAML 中循环一个主干生成的 JSON 对象

我的视图呈现如下:

render: function() {
  this.$el.html(this.template( this.model.toJSON() ))
  return this;
}

this.model.toJSON() 具有以下价值:

Object {name: "E", data_set: "[{"value":"g"},{"value":"b"}]"} 

我的 HAML 模板如下所示:

%script#template{"type" => "text/template"}
  %div.chord
    %span <%= data_set %>

我怎样才能实现对数据集的迭代,以便访问两个值“g”和“b”并将它们显示在模板中。

任何帮助深表感谢。

4

1 回答 1

1

在您的视图中,您的模板属性将引用一个 JavaScript 函数,该函数将编译您的 HAML 模板。有关 HAML 到 JavaScript 函数编译器的信息,请参阅此站点

var x = Backbone.View.extend({
   template: Haml($("#TemplateName").html()), // <-- 
   render: function() {
     // now render your template out
   }
});

希望这对你有用。我还没有测试过代码,但是当你想改变模板引擎时,这个概念在 Backbone 中是通用的。似乎还有一些其他的 HAML to JavaScript 项目可供您研究。

于 2013-03-18T12:28:53.040 回答