Articles of promise

Cosa è std :: promise?

Ho una certa familiarità con i componenti std::thread , std::async e std::future C ++ 11 (es. Vedi questa risposta ), che sono semplici. Tuttavia, non riesco a capire cosa std::promise è, cosa fa e in quali situazioni è meglio utilizzato. Il documento standard di per sé non contiene molte informazioni oltre alla sua sinossi di […]

Nodejs esprime e promette di non fare ciò che mi aspetto

Sto cercando di creare un’API di accesso usando NodeJS, ma il mio codice non sta facendo quello che mi aspetto. Sono molto nuovo a js, promesse e tutto questo per favore semplifica ogni risposta se ansible. Da quello che posso vedere nell’output del mio codice, la prima parte di promise non aspetta che la funzione […]

JavaScript Callback promesso esegue Asynchronosuly

Supponiamo che io abbia questo codice function y(resolve, reject) { console.log(“Result”); resolve(); } var promise = new Promise(y); Quello che voglio sapere è se la funzione y sarà eseguita in modo asincrono o meno.

Cosa significa ] nella console javascript e come ottenerlo

Ho la seguente funzione, tentando di usare Promises. var getDefinitions = function(){ return new Promise(function(resolve){ resolve(ContactManager.request(“definition:entities”)); }); } var definitions = getDefinitions() restituisce: Promise {[[PromiseStatus]]: “resolved”, [[PromiseValue]]: child} Voglio ottenere il valore di PromiseValue, ma per chiedere var value = definitions.PromiseValue mi dà un risultato indefinito. La mia domanda è cosa significano le doppie parentesi […]

Gestione degli errori in Promise.all

Ho una serie di promesse che sto risolvendo con Promise.all (arrayOfPromises); Vado avanti per continuare la catena di promesse. Sembra qualcosa del genere existingPromiseChain = existingPromiseChain.then(function() { var arrayOfPromises = state.routes.map(function(route){ return route.handler.promiseHandler(); }); return Promise.all(arrayOfPromises) }); existingPromiseChain = existingPromiseChain.then(function(arrayResolved) { // do stuff with my array of resolved promises, eventually ending with a res.send(); […]

usando setTimeout sulla catena di promesse

Qui sto cercando di avvolgere la mia testa intorno alle promesse. Qui alla prima richiesta ottengo una serie di link. E alla prossima richiesta ottengo il contenuto del primo link. Ma voglio fare un ritardo prima di restituire il prossimo object promesso. Quindi io uso setTimeout su di esso. Ma mi dà il seguente errore […]

Devo tornare dopo la risoluzione / rifiuto iniziale?

Supponiamo che abbia il seguente codice. function divide(numerator, denominator) { return new Promise((resolve, reject) => { if(denominator === 0){ reject(“Cannot divide by 0”); return; //superfluous? } resolve(numerator / denominator); }); } Se il mio scopo è usare il reject per uscire presto, dovrei prendere l’abitudine di return subito dopo?

Un messaggio Promise.reject deve essere racchiuso in Errore?

Utilizzando la promise nativa (ES6). Devo rifiutare con un errore : Promise.reject(new Error(‘Something went wrong’)); O dovrei semplicemente rifiutare con una stringa: Promise.reject(‘Something went wrong’); E qual è la differenza nel comportamento del browser?

In attesa di più di una operazione simultanea attende

Come posso modificare il seguente codice in modo che entrambe le operazioni asincrone vengano triggerste e sia data l’opportunità di essere eseguite contemporaneamente? const value1 = await getValue1Async(); const value2 = await getValue2Async(); // use both values Devo fare qualcosa del genere? const p1 = getValue1Async(); const p2 = getValue2Async(); const value1 = await p1; […]

Come posso determinare in modo sincrono lo stato di Promessa di JavaScript?

Ho una pura Promessa JavaScript (implementazione integrata o poly-fill): var promise = new Promise(function (resolve, reject) { /* … */ }); Dalle specifiche , una promise può essere una delle seguenti: ‘sistemato’ e ‘risolto’ ‘sistemato’ e ‘rifiutato’ ‘in attesa di’ Ho un caso d’uso in cui desidero interrogare la Promessa in modo sincrono e determinare: […]