Mi stavo chiedendo il miglior schema/approccio qui. Questa è una funzione del mio router, quindi l'utente preme "virgolette /: id", ma per renderizzare quella vista, ho bisogno di un elenco dei loro progetti, clienti e valute. Quale sarebbe il modo migliore per assicurarsi che tutti e 3 i recuperi() si siano verificati prima di tentare di creare un'istanza della vista quotesEdit
? È considerato una cattiva pratica prendere tutte le informazioni quando l'utente fa clic su qualcosa?Backbone - esecuzione di più fetch() prima di eseguire il rendering di una vista
quotesEdit: function(id) {
kf.Collections.quotes = kf.Collections.quotes || new kf.Collections.Quotes();
kf.Collections.projects = kf.Collections.projects || new kf.Collections.Projects();
kf.Collections.currencies = kf.Collections.currencies || new kf.Collections.Currencies();
//do a fetch() for the 3 above
kf.Collections.customers = kf.Collections.customers || new kf.Collections.Customers();
var quote = kf.Collections.quotes.where({Id: parseInt(id, 10)});
kf.Utils.ViewManager.swap('sectionPrimary', new kf.Views.section({
section: 'quotesEdit',
model: quote[0]
}));
}
Che lavoro? È elegante se lo fa! – benhowdle89
@ benhowdle89, oughta lavoro. – jevakallio
Per impostazione predefinita, il recupero viene effettuato utilizzando il metodo http 'GET'. Ed è sorprendente poter scrivere '_.invoke ([virgolette, progetti, valute], 'fetch', {type: 'POST'})' – lexeme