簡體   English   中英

如何在骨干.js中查看模型列表

[英]how to see list of models in backbone.js

這是我的content.js,其中我正在使用bones.js呈現內容。

 // Our basic **Content** model has `content`, `order`, and `done` attributes.
var Content = Backbone.Model.extend({
  // If you don't provide a Content, one will be provided for you.
  EMPTY: "empty Content...",
  // Ensure that each Content created has `content`.
  initialize: function() {

  }
});
var ContentCollection = Backbone.Collection.extend({  
  model : Content
});     
// Create our global collection of **Todos**.
window.Contents = new ContentCollection;
// The DOM element for a Content item...
var ContentView = Backbone.View.extend({
  //... is a list tag.
  tagName:  "li",
  events: {
    "click .content":          "open"
  },
  // a one-to-one correspondence between a **Content** and a **ContentView** in this
  // app, we set a direct reference on the model for convenience.
  initialize: function() {
    _.bindAll(this, 'render', 'close');
    this.model.bind('change', this.render);
    this.model.view = this;
  },
  // Re-render the contents of the Content item.
  render: function() {
    $(this.el).html(this.template(this.model.toJSON()));
    return this;
  }

});

這是我制作內容列表並渲染它們的方式。

 for(var i=0; i<data.length; i++) {
      var content = new Content(data[i]);
      var templ=_.template($('#tmpl_content').html());

      var view = new ContentView({model: content});
      view.template=templ;
      $("#content").append(view.render().el);
 }

我的問題是如何獲得競爭模型清單。 正如我創建的收藏

 var ContentCollection = Backbone.Collection.extend({  
      model : Content
    });     
    // Create our global collection of **Todos**.
    window.Contents = new ContentCollection;

因此,當我觀看Contents它會顯示長度0和models []。

如何在收藏中添加競爭力。 或如何在骨干.js中查看模型列表

您需要在Collection.add(models)包含任何內容之前。

您還可以在集合上指定一個URL(應返回模型的JSON數組),然后執行window.Contents.fetch()。 骨干網將自動填充您的集合中指定的模型(內容),並將其自動添加到您的集合中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM