#javascript #backbone.js #collections
#javascript #backbone.js #Коллекции
Вопрос:
надеюсь, вы сможете мне помочь, мой вопрос остается без ответа после нескольких часов поиска.
я использую Backbone.js с помощью Epoxy.js Просмотр привязок данных и привязка коллекции к моему представлению для отображения каждой записи:
var list = new (Backbone.Collection.extend({
model: Model
}))();
var View = Backbone.Epoxy.View.extend({
el: $el,
collection: list,
itemView: ItemView,
bindings: { 'tbody': 'collection:$collection' }
});
new View();
Модель является базовой основой.Модель, ItemView представление, представляющее одну запись моей коллекции:
var Model = Backbone.Model.extend({
defaults: {
foo: 'foo',
bar: 'bar'
}
});
var ItemView = Backbone.Epoxy.View.extend({
tagName: "tr",
el: '<tr>' [
'<td class="list-foo"></td>',
'<td class="list-bar"></td>'
].join('') '</tr>',
bindings: {
'.list-foo': 'text:foo',
'.list-bar': 'text:bar',
}
});
Теперь это работает как шарм, каждая модель в моей коллекции будет отображаться в моей таблице идеально, и любое обновление моего списка обновит мои представления. Но:
Есть ли способ сгруппировать мою коллекцию с обновлением моих представлений?
Collection.groupBy()
возвращает массив с моими сгруппированными данными, но как я могу справиться с этим с Epoxy.Views
?
Единственное, но уродливое решение, которое я могу придумать, — это заполнить другую коллекцию новой моделью (сгруппированными данными), заменить view.collection
, view.ItemView
и обновить привязки, но нет ли другого, более чистого способа сделать это?
Заранее спасибо!
Комментарии:
1. привет. есть успехи?
2. К сожалению, нет — отошел от backbone через год после моего поста
3. Извините, просто из любопытства, что за фреймворк вы используете сейчас?
4. В настоящее время активно используется Vue.js и я очень доволен этим.
5. вау! точно мои мысли о Vue. Спасибо!