我有一个显示房间的应用程序,每个房间都会显示这个房间的预订。
所以,我有:
绘图会更清楚(ul.reservations是我要渲染ReservationsCollectionView视图的地方:
在RoomView的 onRender 中,我尝试像这样呈现RoomCollectionView:
var RoomView = Marionette.ItemView.extend({
ui: {
$reservationsList: 'ul.reservations',
$noReservation: '.no-reservation',
},
onRender: function(){
// Display reservations
var reservationsCollection = this.model.get('reservations');
var reservationsCollectionView = new ReservationsCollectionView(
{collection:reservationsCollection}
);
//$('ul.reservations').html(reservationsCollectionView.render().el);
this.ui.$reservationsList.html(reservationsCollectionView.render().el);
if(reservationsCollection.length > 0)
{
this.ui.$noReservation.hide();
}
else
{
this.ui.$noReservation.show();
}
//$(this.ui.$reservationsList.el).html(reservationsCollectionView.render());
//this.show(reservationsCollectionView);
}
//...
});
它工作得很好,但是它在 ALL 中呈现了应用程序的ul.reservations,而不仅仅是它的RoomView ......
这只是一个小问题还是一个更大的架构问题? (我从Marionette开始......)
感谢您的帮助