Я довольно новичок в Marionette.js и, кажется, испытываю некоторые проблемы с отображением коллекции.Коллекция Marionette.js не определена в виде коллекции
При попытке показать представление появляется следующее сообщение об ошибке консоли: Uncaught TypeError: Cannot read property 'toJSON' of undefined
.
Кажется, что коллекция не является обязательной для детского вида. Экземпляр Collection View выглядит ОК, то есть я вижу свойство childView
и свойство коллекции с выбранными моделями. Документы кажутся довольно простыми в том, как построить представление коллекции, поэтому не уверен, что мне не хватает. Благодарю.
Child view:
var UserProfile = Marionette.ItemView.extend({
template: '',
initialize: function() {
this.template = Marionette.TemplateCache.get("#userprofile");
},
render: function() {
console.log(this.collection); //undefined
var data = this.collection.toJSON(); //error message here
this.$el.html(this.template({data:data}));
}
});
//Collection view:
var UserView = Marionette.CollectionView.extend({
childView: UserProfile
});
// Fetch collection and show:
var myQuery = new Parse.Query(app.Models.User);
myQuery.limit(200).containedIn(option, uiArray);
var Contacts = Parse.Collection.extend({
model: app.models.User,
query: myQuery
});
var contacts = new Contacts();
contacts.fetch().then(function(contacts) {
var userview = new UserView({collection:contacts});
app.regions.get("content").show(userview);
})
Это похоже на работу. Думаю, это позволит мне использовать ItemView, когда я просто хочу отобразить одну модель в другом месте приложения? – user2232681