Czy można uzyskać ostatni obiekt z widoku szkieletowego CompositeView? Znalazłem dużo dokumentacji do uzyskania ostatniego modelu w kolekcji, ale nie tego ostatniego widoku w zbiorze widoków.Pobierz ostatni element z CompositeView w marionetce
Powodem, dla którego chciałbym to zrobić, jest to, że mogę renderować ostatni wiersz w tabeli nieco inaczej.
Poniżej znajduje się kod, którego używam teraz, działa dobrze, ale byłby mniej "hacky", gdybym mógł uzyskać prawidłowy obiekt z CompositeView, który go utworzył i wyrenderował. Używa jQuery do przeszukiwania całej części DOM zawartej przez CompositeView dla ostatniego elementu, a następnie manipuluje tym elementem.
B.ListControl.View = Backbone.Marionette.CompositeView.extend({
itemView: ...,
itemViewContainer: ...,
template: ...,
// ON RENDER
onRender: function(){
// Add button to the last element in the list
this.$el.find('div:last').text('Custome stuff goes here');
}
});
Dzięki!
Niesamowite, dziękuję bardzo! –
Dokumentacja Backbone.BabySitter do wyszukiwania widoków z 'ChildViewContainer' (którego' .children' jest instancją): https://github.com/marionettejs/backbone.babysitter#retrieving-views – alxndr
n.b. "CompositeView" Marionetki ma właściwość o nazwie '.childViewContainer', ale nie jest ona związana: marionetka oczekuje, że będzie to łańcuch selektora jQuery, którego użyje do określenia, gdzie umieścić instancje klasy' childView', którą tworzy. https://github.com/marionettejs/backbone.marionette/blob/master/docs/marionette.compositeview.md#compositeviews-childviewcontainer – alxndr