2012-08-30 10 views
5

Ho usato dust.js con l'interfaccia di richiamata e mi sento piuttosto a mio agio. Ora voglio saperne di più sull'interfaccia Streaming.In dust.js, qual è l'interfaccia di streaming?

Ho letto i documenti here e here e il concetto mi sfugge.

Credo che la mia domanda sono:

  1. Che cosa significa un modello di streaming? A me sembra che io possa usarlo per impostare su un oggetto che, una volta inviato il dato, risponderà tramite visualizzando tali dati rispetto a un modello.

  2. In quali casi dovrei utilizzare lo streaming anziché l'interfaccia Callback ?

  3. Esistono esempi di codice che possono aiutare il mio apprendimento?

Grazie!

+0

cosa intendi con interfaccia di streaming? Penso che tu stia parlando del metodo stream dell'oggetto polvere – JAiro

+0

@JAiro sì, tramite interfaccia streaming, mi riferisco al metodo dust.stream(). Nella [documentazione] (http://akdubya.github.com/dustjs/) si chiama "The Streaming Interface". Non capisco come dovrebbe funzionare. Non capisco la differenza tra esso e dust.render(). –

risposta

6

nell'interfaccia di callback, è possibile utilizzare solo i modelli renderizzati una volta che la polvere è stata eseguita, rendendo l'intero modello, fornendo una richiamata, che spesso inserisce il modello renderizzato nel DOM.

nell'interfaccia streaming, si ha un maggiore controllo sulla praticamente ogni parte del processo di rendering: come pezzi resi sono messi in flusso di output, quando si desidera che le parti della pagina da rendere ecc

quando si utilizza l'interfaccia di callback, l'interfaccia di callback ha un attributo 'out' a cui si aggiunge sempre, che alla fine fornisce all'utente come secondo parametro nel callback fornito dall'utente. nell'interfaccia di streaming, quando un blocco appena elaborato è disponibile, emette un evento chiamato "dati" e lo lascia a te per gestire i dati.

Quindi, diciamo che hai un modello molto grande che vuoi renderizzato, puoi spezzare il modello in blocchi, che, una volta completato, emetteranno un evento "dati" e definirai un gestore per mettere quel pezzo nel DOM . in altre parole, non è necessario attendere il completamento dell'intero processo di rendering per iniziare a visualizzare elementi sulla pagina.

Questo può essere utile se ad esempio si desidera eseguire il rendering di più pagine della tua app in una sola volta, ma si desidera solo visualizzare una pagina per l'utente - ad es. se usi jquerymobile, allora utilizzerai l'interfaccia di streaming per aiutare a ottenere la prima pagina per l'utente il più velocemente possibile, mentre il resto viene eseguito in modo asincrono. spero che questo aiuti

+0

Grazie, è stato molto utile. Conoscete altre risorse di documentazione sulla polvere oltre ai due che ho menzionato nella domanda? –

+3

No. Quei due sono praticamente in termini di documenti per la polvere. Ho passato il codice per capire di più. Potrei scrivere un articolo sul mio blog. Qualcosa in particolare che ti serve spiegare? – asyraf9

+0

Sono molto interessato a un esempio di generazione di diversi blocchi e quindi di riversarli nel modello. Sto pensando ad una grande lista di oggetti. Suppongo che lo streaming possa essere usato perfettamente per questo, ma forse mi sbaglio? – Redfox

Problemi correlati