0

バックボーンで生成された JSON オブジェクトを HAML でループしたい

My View は次のようにレンダリングされます。

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 %>

2 つの値 "g" と "b" にアクセスしてテンプレートに表示するには、どうすればデータセットを反復処理できますか。

どんな助けでも大歓迎です。

4

1 に答える 1

1

ビュー内で、テンプレートプロパティはHAMLテンプレートをコンパイルするJavaScript関数を参照します。HAMLからJavaScriptへの関数コンパイラについては、このサイトを参照してください

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

うまくいけば、これはあなたのために働きます。私はコードをテストしていませんが、テンプレートエンジンを変更したい場合、その概念はBackboneでは普遍的です。他にも、HAMLからJavaScriptへのプロジェクトがいくつかあるようです。

于 2013-03-18T12:28:53.040 に答える