Sto ancora avvolgendo il mio cervello intorno a Angular.JS.Angular.JS Spegnere due chiamate di servizio asincrono, quindi eseguire un'azione dopo aver completato entrambi
Ho due chiamate $ http indipendenti che recuperano i dati dai servizi Web remoti. Ho un'azione che desidero attivare dopo che entrambe le chiamate di assistenza sono state completate.
- La prima chiamata di servizio popola il $ scope.model
- La seconda chiamata di servizio, modifica i dati nel $ scope.model (aggiunge alcune proprietà di contatori sono resi nella vista)
Un altro requisito univoco è che alla fine la seconda chiamata di servizio verrà richiamata e aggiornata all'esterno del controller con $ scope.model. È una pompa per i messaggi di notifica.
Sto supponendo che userò promesse $ q e possibilmente $ servizio, ma non sono davvero sicuro da dove iniziare per qualcosa di simile seguendo alcune best practice.
So che non sembra che le chiamate asincrone siano appropriate qui, poiché il mio esempio potrebbe essere semplificato facendolo in modo sincrono. Tuttavia, la seconda chiamata di servizio è un aggiornamento della notifica, quindi verrà continuamente interrogato sul server (eventualmente verrà utilizzato un websocket).
È uno schema comune che vedrò in questa applicazione.
Inizialmente con questa versione della risposta. In futuro, potrei cambiare il mio codice per vedere la proprietà per le modifiche, poiché alla fine sarà in ascolto di un messaggio pump. E punti bonus per l'uso della sintassi della dichiarazione di servizio minifiable nel codice di esempio. – taudep
Haha ... Non vedo punti bonus! : P Ho cambiato la dichiarazione del controller per avere anche la sintassi minify-friendly. Sono contento di poterti aiutare. –
Grazie per aver scritto che è necessario passare una serie di valori ..... argg mi è mancato per un po '! –