Come catena le promesse in javascript

Come catena le promesse in javascript
L'oggetto Promise JavaScript viene utilizzato per gestire le funzioni asincrone. Rappresenta lo stato e i dati restituiti dalla funzione specificata. Lo stato dell'oggetto Promise può aiutarti a determinare se la funzione asincrona aggiunta è completata, rifiutata o è ancora in sospeso.

In JavaScript, le promesse sono incatenate per la gestione del flusso di esecuzione in un programma. Le promesse con catena sono utili anche quando è necessario eseguire una serie di funzioni asincroni, in cui ciascuno dipende dalla funzione precedente. Include anche la propagazione degli errori.

Questo articolo discuterà della procedura a Promette della catena In JavaScript con l'aiuto di esempi adatti. Quindi iniziamo!

Come creare una promessa in JavaScript

Puoi usare il "Promettere()"Costruttore per la creazione di un oggetto Promise nel tuo programma:

Let Promise = new Promise (function (resolve, rifiuta)
// corpo della funzione
)

In JavaScript, il "Promettere()"Il costruttore accetta un"funzione()"Come argomento che hanno ulteriormente due argomenti:"risolvere()" E "rifiutare()". La funzione Resolve () verrà invocata se la promessa viene restituita correttamente; Altrimenti, la funzione di rifiuto () verrà chiamata.

Esempio: come creare una promessa in JavaScript
Nel programma seguente, creeremo un oggetto promettente chiamato "Numbervalue"Utilizzando il costruttore Promise (). Secondo la sintassi data, abbiamo aggiunto i parametri "risolvere()" E "rifiutare()"Per il nostro oggetto promettente:

const numero = true;
let NumberValue = new Promise (function (resolve, rifiuy)
if (numero)
risolvere ("abbiamo un numero");
altro
rifiutare ("Non abbiamo alcun numero");

);

Il valore del "numero" è impostato per "VERO"In questo caso la promessa verrà risolta:

console.log (numerValue);

L'esecuzione del programma fornito restituirà l'oggetto Promise al suo stato:

Come catena le promesse in javascript

Se sei bloccato in una situazione in cui è necessario eseguire più attività asincroni in una sequenza, allora il concatenamento della promessa può aiutarti a questo proposito.

Con il concatenamento della promessa, è possibile specificare le operazioni dopo la risoluzione della promessa particolare. A tale scopo, il Javascript "Poi()","presa()", E "Finalmente()"Vengono utilizzati metodi.

Come catena le promesse nel metodo JavaScript usando allora ()

Il javascript "Poi()"Il metodo viene utilizzato per l'aggiunta della funzione gestore all'oggetto Promorme Creato. Questo metodo comprende "in piena piega" E "onimietto"Parametri, permettendoti di gestire gli scenari in cui le promesse sono adeguate o fallite.

Sintassi del metodo JavaScript quindi ()

PromiseBject.quindi (mantenuto, onimietto);

Qui "in piena piega" E "onimietto"Sono l'argomento del"Poi()" metodo. Questo metodo restituirà un oggetto Promise con il risultato della funzione Handler.

Esempio: come catena le promesse in javascript usando allora () metodo
Prima di tutto, creeremo un oggetto promettente chiamato "Numbervalue"Con l'aiuto del costruttore Promise ():

let NumberValue = new Promise (function (resolve, rifiuy)
prodotto const = 2;
risolvere (prodotto);
);

Dopodiché, utilizzeremo "Poi()"Metodo per incatenare le funzioni"SuccessValue ()" E "SuccessValue1 ()", E "SuccessValue2 ()" con il "Prodotto" COME "in piena piega"Argomento alla promessa:

Numbervalue
.Quindi (funzione SuccessValue (Product)
console.registro (prodotto);
restituire il prodotto * 2;
)
.Quindi (funzione SuccessValue1 (Product)
console.registro (prodotto);
restituire prodotto * 4;
)
.Quindi (funzione SuccessValue2 (Product)
console.registro (prodotto);
restituire il prodotto * 6;
);

La catena aggiunta dei metodi allora () verrà eseguita quando la promessa specificata viene mantenuta:

Come catena le promesse nel metodo JavaScript usando catch ()

Il javascript "presa()"Il metodo gestisce le promesse rifiutate o il caso in cui si verifica un errore. È considerata una buona pratica respingere una promessa piuttosto che generare esplicitamente un errore.

Esempio: come catena le promesse in javascript usando catch ()
Ora proveremo ad aggiungere un metodo Catch () nell'esempio precedente:

let NumberValue = new Promise (function (resolve, rifiuy)
rifiuto ("purtroppo, la promessa è respinta");
);
Numbervalue.Poi(
funzione successValue (risultato)
console.registro (risultato);
,
)

Il sottoto "presa()"Il metodo verrà eseguito in caso di errore:

.presa(
funzione ErrorValue (risultato)
console.registro (risultato);

);

Come puoi vedere dall'output che il "Numbervalue"La promessa è respinta e"presa()"Il metodo viene quindi utilizzato per la gestione dell'errore:

Come usare il metodo finalmente () con promesse

IL "Finalmente()"Il metodo viene utilizzato in una situazione in cui è necessario eseguire un codice indipendentemente dal fatto che la promessa aggiunta sia mantenuta o meno.

Esempio: come utilizzare il metodo finalmente () con promesse
Abbiamo aggiunto il javascript "Finalmente()"Nel seguente esempio che eseguirà una promessa viene respinto o adempiuto:

let NumberValue = new Promise (function (resolve, rifiuy)
risolvere ("Promessa è risolta");
);
Numbervalue.Finalmente(
funzione msg ()
console.log ('Il codice viene eseguito correttamente');

);

L'output di cui sopra indica che il codice aggiunto nel "Finalmente()"Il metodo viene eseguito correttamente e la promessa viene risolta.

Conclusione

Usando Poi() E presa() Metodi, è possibile incazzare le promesse in JavaScript. Il metodo allora () viene utilizzato per specificare l'operazione che deve essere eseguita quando viene mantenuta la promessa aggiunta, mentre il metodo Catch () gestisce il caso in cui la promessa viene respinta. Questo articolo ha discusso della procedura per catena promesse in JavaScript usando i metodi allora () e catch ().