Articles of promise

Le animazioni di transizione delle pagine con router Angular 2.0 e promemoria dell’interfaccia dei componenti

In 1.x angular possiamo usare ngAnimate per rilevare quando stiamo lasciando o entrando in una particolare rotta. Inoltre siamo in grado di applicare comportamenti a loro: animateApp.animation(‘.myElement’, function(){ return { enter : function(element, done) { //Do something on enter }, leave : function(element, done) { //Do something on leave } }; )}; Risultante in un […]

Javascript ES6 prometterà supporto “fatto” api?

Per esempio p = new Promise(function (resolve, reject) { throw ‘err’; }); p.done(); Nella maggior parte delle librerie di polyfill promesse, il fatto genererà un errore e l’esecuzione corrente verrà interrotta. Ma se usiamo p.then() , non accadrà nulla. L’errore è inghiottito dalla promise. Se usiamo p.catch , non abbiamo modo di uscire dall’esecuzione corrente. […]

Come attendere la risoluzione di una promise JavaScript prima di riprendere la funzione?

Sto facendo dei test unitari. Il framework di test carica una pagina in un iFrame e quindi esegue asserzioni su quella pagina. Prima di iniziare ogni test, creo una Promise che imposta l’evento onload per chiamare resolve() , imposta lo src di iFrame e restituisce la promise. Quindi, posso solo chiamare loadUrl(url).then(myFunc) , e attenderà […]

Come fare una promise da setTimeout

Questo non è un problema di mondo reale, sto solo cercando di capire come vengono create le promesse. Devo capire come fare una promise per una funzione che non restituisce nulla, come setTimeout. Supponiamo di avere: function async(callback){ setTimeout(function(){ callback(); }, 5000); } async(function(){ console.log(‘async called back’); }); Come posso creare una promise che async […]

Impostazione di un gestore di timeout su una promise in angularjs

Sto cercando di impostare un timeout nel mio controller in modo che se una risposta non viene ricevuta in 250 ms, dovrebbe fallire. Ho impostato il mio test unitario per avere un timeout di 10000 in modo che questa condizione sia soddisfatta, qualcuno può indicarmi la giusta direzione? (EDIT Sto cercando di ottenere questo risultato […]

Come faccio a rendere questo async foreach con le promesse?

Ho già giocato con Promises, ma sono nuovo per loro e non riesco a capire come farlo correttamente. Al momento, non c’è alcun motivo per la Promessa, perché non aspetta che l’async $.get completato. Fondamentalmente, ciascuna foreach iteration ha la sua funzione $.get , e ho bisogno di averli tutti completi e quindi di continuare […]

Le promesse di AngularJS, $ q, differiscono

MODIFICARE La prima risposta è quella elegante, ma, come affermato alcune volte in questa domanda e in altre domande su StackOverflow, il problema è che il servizio e il controller eseguono il loro compito prima che i dati arrivino effettivamente. (Ultimo commento sulla prima risposta 🙂 Sì, il problema è che le chiamate API terminano […]

Programmazione asincrona JavaScript: promesse vs generatori

Promesse e generatori ti permettono di scrivere codice asincrono. Non capisco perché entrambi questi meccanismi siano introdotti nello script ECMA 6. Quando è meglio usare le promesse e quando i generatori?

Restituisci risultato Promessa invece di Promessa in Nodejs

sfondo Sto cercando di imparare le promesse e ho una catena di promesse su cui voglio migliorare. Problema Mentre imparo come concatenare le promesse, non riesco a capire perché qualcuno preferirebbe restituire una promise invece di restituire il suo valore. Prendi il seguente esempio, che usa il concatenamento promesso: let myObj = new MyClass(); myObj.getInfo() […]

TypeError: imansible leggere la proprietà ‘then’ di undefined

loginService.islogged() La funzione precedente restituisce una stringa come “fallita”. Tuttavia, quando provo a eseguire la funzione su di esso, verrà restituito l’errore di TypeError: Cannot read property ‘then’ of undefined e il cursore viene indicato subito dopo connected e prima. Di seguito è riportata la funzione completa: var connected=loginService.islogged(); alert(connected); connected.then(function(msg){ alert(“connected value is “+connected); […]