我無法讓Backbone集合正確排序。我繼承了這個項目,所以在其他地方可能會出現一些錯誤,但我想排除我的任何語法錯誤。骨幹菜單沒有排序
該項目使用JSON文件來處理數據:
"classifications": [
{
"name": "1 Bedroom",
"alias": "1BR",
"id": "1BR",
"menu_desc": "Residences"
},
{
"name": "2 Bedroom",
"alias": "2BR",
"id": "2BR",
"menu_desc": "Residences"
},
{
"name": "3 Bedroom",
"alias": "3BR",
"id": "3BR",
"menu_desc": "Residences"
},
{
"name": "4 Bedroom",
"alias": "4BR",
"id": "4BR",
"menu_desc": "Residences"
},
{
"name": "Common Areas",
"alias": "Common",
"id": "Common",
"menu_desc": "Resident Amenities"
}
]
此前,沒有一個房單位,以及它呈現的是這樣的順序:
我加了一個房間的分類,突然這個訂單是這樣的:
我做了一些挖掘並找到關於比較器屬性的文檔,但它似乎只適用於集合。該項目不使用集合進行分類。它適用於子菜單項目(單元所在的地板等),但不是主菜單:
var MenuClassificationListView = Backbone.View.extend({
id: "classification_accordion",
template: _.template("<% var classifications = this.options.classifications; _.each(this.collection.attributes, function(v,k) { %>"+
"<h3 class='<%= k %>'><%= classifications.get(k).get('name') %>"+
"<p><%=classifications.get(k).get('menu_desc')%></p></h3>"+
"<% var model = new MenuClassificationList(v); var view = new MenuClassificationItemView({collection:model, classification:k}); %>"+
"<% print(view.render().el.outerHTML); %>"+
"<% }); "+
"%>"),
render: function(){
//console.log(this.options.classifications);
//console.log(this.collection.attributes);
//alert(1);
this.$el.html(this.template());
return this;
}
});
如何合併比較器?
感謝,
TY