Запитання з тегом «promise»

Обіцяння - це тактика відкладених обчислень, яка підходить для декількох стилів одночасності: паралельність потоку та циклу подій для локальних обчислень, а також синхронний та асинхронний віддалений обмін повідомленнями. Обіцянка представляє можливий результат асинхронної операції. Основний спосіб роботи з обіцянками - це метод, який реєструє перетворення від можливої ​​цінності або причини невдачі до нової обіцянки.


20
Використання async / wait за допомогою циклу forEach
Чи є проблеми з використанням async/ awaitу forEachциклі? Я намагаюся прокрутити масив файлів та awaitвміст кожного файлу. import fs from 'fs-promise' async function printFiles () { const files = await getFilePaths() // Assume this works fine files.forEach(async (file) => { const contents = await fs.readFile(file, 'utf8') console.log(contents) }) } printFiles() …

19
Як перетворити існуючий API зворотного виклику в обіцянки?
Я хочу працювати з обіцянками, але у мене є API зворотного виклику у такому форматі: 1. Завантаження DOM або інша разова подія: window.onload; // set to callback ... window.onload = function() { }; 2. Простий зворотний виклик: function request(onChangeHandler) { ... } request(function() { // change happened ... }); 3. …

17
Як отримати доступ до попередніх результатів обіцянки в ланцюзі .then ()?
Я реструктуризував свій код до обіцянок і створив чудовий довгий плоский ланцюжок обіцянок , що складається з декількох .then()зворотних викликів. Зрештою, я хочу повернути деяке складене значення і мені потрібно отримати доступ до декількох проміжних результатів обіцянки . Однак значення роздільної здатності від середини послідовності не входять в обсяг останнього …

2
Що таке явна обіцянка будівництва антипатернів і як я цього уникаю?
Я писав код, який робить щось таке: function getStuffDone(param) { | function getStuffDone(param) { var d = Q.defer(); /* or $q.defer */ | return new Promise(function(resolve, reject) { // or = new $.Deferred() etc. | // using a promise constructor myPromiseFn(param+1) | myPromiseFn(param+1) .then(function(val) { /* or .done */ | …


10
jQuery відкладені та обіцянки - .then () vs .done ()
Я читав про відкладені та обіцянки jQuery, і не бачу різниці між використанням .then()& .done()для успішного зворотного виклику. Я знаю, що Ерік Хайндс згадує про це .done()і .success()співпадає з однаковою функціональністю, але я здогадуюсь, що так відбувається, .then()оскільки всі зворотні виклики викликаються після завершення успішної операції. Чи хтось, будь ласка, …

10
Не обіцянки - це лише зворотні дзвінки?
Я розробляв JavaScript вже кілька років, і взагалі не розумію суєти щодо обіцянок. Здається, що все, що я роблю, - це зміни: api(function(result){ api2(function(result2){ api3(function(result3){ // do work }); }); }); Яка я могла б використовувати бібліотеку, як асинхронність, у будь-якому випадку: api().then(function(result){ api2().then(function(result2){ api3().then(function(result3){ // do work }); }); …

18
Зачекайте, коли всі обіцянки завершаться, навіть якщо деякі відхиляться
Скажімо, у мене є набір Promises, які здійснюють мережеві запити, з яких один не зможе: // http://does-not-exist will throw a TypeError var arr = [ fetch('index.html'), fetch('http://does-not-exist') ] Promise.all(arr) .then(res => console.log('success', res)) .catch(err => console.log('error', err)) // This is executed Скажімо, я хочу зачекати, поки все це закінчиться, незалежно …

5
JavaScript Обіцяє - відкинути проти кидка
Я прочитав кілька статей на цю тему, але мені все одно не зрозуміло, чи є різниця між Promise.rejectпомилкою проти кидання. Наприклад, Використання Promise.reject return asyncIsPermitted() .then(function(result) { if (result === true) { return true; } else { return Promise.reject(new PermissionDenied()); } }); Використання кидка return asyncIsPermitted() .then(function(result) { if (result …

9
Що таке std :: обіцянка?
Я досить знайомий з C ++ 11 std::thread, std::asyncіstd::future компоненти (наприклад , див цей відповідь ), які є прямо вперед. Однак я не можу повністю зрозуміти, що std::promiseтаке, що робить і в яких ситуаціях найкраще використовувати. Сам стандартний документ не містить у собі великої кількості інформації поза конспектом класу, а …


5
Яка різниця між повертається значенням або Promise.resolve від тоді ()
Яка різниця між: new Promise(function(res, rej) { res("aaa"); }) .then(function(result) { return "bbb"; }) .then(function(result) { console.log(result); }); Виконати фрагмент кодуСховати результатиРозгорніть фрагмент і це: new Promise(function(res, rej) { res("aaa"); }) .then(function(result) { return Promise.resolve("bbb"); }) .then(function(result) { console.log(result); }); Виконати фрагмент кодуСховати результатиРозгорніть фрагмент Я запитую, як я отримую …


20
Вирішіть Javascript Promise за межами функції
Я використовував ES6 Promise. Зазвичай Обіцянку будують і використовують так new Promise(function(resolve, reject){ if (someCondition){ resolve(); } else { reject(); } }); Але я робив щось подібне нижче, щоб прийняти рішучість назовні заради гнучкості. var outsideResolve; var outsideReject; new Promise(function(resolve, reject) { outsideResolve = resolve; outsideReject = reject; }); І …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.