2016-12-14 22 views
-1

Lassen Sie mich damit beginnen, dass dies eine theoretische Frage ist, daher kann ich Ihnen keinen Code zur Verfügung stellen.Erfolgt das Rendern mehrerer Ansichten in Backbone synchron oder asynchron?

Ich denke über eine Backbone-Struktur nach, bei der mehrere Ansichten auf einer Seite gerendert werden. Jede Ansicht enthält eine Renderfunktion mit einem oder mehreren API-Aufrufen, die Antwortzeiten haben, die schnell oder langsam sein können.

Ich frage mich, wenn wir Ansicht Reihenfolge A, B, C, D und A Daten langsam vom Server reagiert, blockiert dies die Wiedergabe/Datenabruf von B, C und D, wenn ich diese Ansichten durchlaufen zu rendern, oder wird es die Renderfunktion von A nicht initialisieren und die Renderfunktion B initialisieren?

Ich habe versucht, dies so klar wie möglich zu schreiben, aber wenn Sie irgendwelche Fragen haben, fragen Sie einfach.

UPDATE: Einige Zeit vergangen und ich fand eine Möglichkeit, diese alle miteinander zu verknüpfen. Ich habe mit einer jQuery deferred gearbeitet und die Pipe-Methode verwendet, um diese Deferreds zusammen zu leiten. Quelle: https://api.jquery.com/deferred.pipe/

+2

* „Jede Ansicht enthält eine Render-Funktion mit einer oder mehreren API-Aufrufe, die Reaktionszeiten haben, die schnell oder langsam sein kann.“ * Was machen wird, die Ergebnisse dieser Gespräche in DOM-Rendering, oder einfach nur das Hinzufügen das Ansichtselement in DOM? Render-Funktionen können API-Aufrufe haben, aber geschieht das eigentliche Rendering innerhalb ihres Erfolgs-Callbacks? Deine Frage ist unvollständig. –

Antwort

0

Ich habe dies getestet, indem ich ein JSFiddle eingerichtet habe und herausgefunden habe, dass Backbone sich nicht darum kümmert, langsame Anfragen zu laden. Es gibt nur eine andere Ansicht wieder, wenn diese aufgerufen wird. For anyone's information

Pull in external resources 
Build two views where one has a call to a large data end point 
Verwandte Themen