Fondamentalmente quello che sto cercando di fare è trovare il modo migliore per gestire tutte le mie viste. Tutte le mie viste vengono chiuse e create quando è necessario .. E per questo motivo, ho creato un gestore separato all'interno della mia istanza Backbone.Router
che si occupa di tutte le mie viste come segue.Viste backbone-manager
router.js
AppRouter.prototype.initialize = function() {
.......
var eMgr = _.extend({}, Backbone.Events);
var vMgr = new ViewManager();
vMgr.add(new vTopMenu({eMgr: eMgr}));
vMgr.add(new vTooltip({eMgr: eMgr}));
app_router.on('route:MainMenu', function() {
vMgr.close_all_views(function(){
vMgr.add(new vmainMenu({eMgr: eMgr}));
vMgr.render_all_views();
});
});
app_router.on('route:showMap', function() {
vMgr.close_all_views(function(){
vMgr.add(new vMapMenu());
vMgr.render_all_views();
});
});
...
}
Come si può vedere il Tooltip TopMenu e vengono creati vista solo una volta come non mi aspetto che non ci sarà alcun bisogno di cambiamenti il loro contenuto. E vorrei anche evitare gli spazi vuoti mentre le viste vengono caricate ...
Non sono sicuro se questa è una buona idea, visto che tutte le altre visualizzazioni vengono chiuse e riavviate una volta Mi muovo da una rotta all'altra.
Quindi la domanda è, è una buona pratica avere queste visualizzazioni configurate in questo modo? O dovrei sempre ricreare le viste quando viene attivato un percorso?