13

ここで私はプロジェクトの始まりにいます。zurb-foundationとマリオネットを使っています。タブであるはずのテンプレートをレンダリングする要素があります。現状:

define([
  "backbone",
  "marionette"
], function(Backbone, Marionette) {

  MyItem = Backbone.Marionette.ItemView.extend({
    template: "#design-tabs",
    className: "section-container tabs",

    onRender: function() {
      $(this.el).foundation();
    }
  });

  return MyItem;
});

タブはありません。<div>これは、テンプレートの > タグを置き換えるためにレンダリングされている<scriptものが特定のデータ属性 (data-section) を持っていないためだと思います。データ属性を含めるために、上記の ItemView 宣言に追加できる「className」のようなものを探しましたが、乾燥してしまいました。私は次のようなものが欲しい:

MyItem = Backbone.Marionette.ItemView.extend({
  template: "#design-tabs",
  data: {
    data-section: "",
    data-foo: "bar"
  },
  className: "section-container tabs",
  .
  .
  .

テンプレート<div>の を置き換えるデータ属性を に (またはそれ以外の方法で)追加するにはどうすればよいですか?<script>

4

2 に答える 2

40

データ プロパティを追加するには、Backbone のattributesハッシュを使用します。

var MyView = Backbone.Marionette.ItemView.extend({
  template: "#design-tabs",
  className: "section-container tabs",
  attributes: {
    "data-section": "",
    "data-foo": "bar"
  }
});

ドキュメント: http://backbonejs.org/#View-attributes

于 2013-07-05T09:10:05.583 に答える