Вопросы с тегом «es6-promise»

Обещание ES6 - это объект ECMAScript 2015, представляющий выполняющуюся асинхронную операцию.

650
Как получить доступ к предыдущим результатам обещания в цепочке .then ()?

Я реструктурировал свой код к обещаниям и создал замечательную длинную цепочку плоских обещаний , состоящую из нескольких .then()обратных вызовов. В конце я хочу вернуть несколько составных значений и получить доступ к нескольким промежуточным результатам обещаний . Однако значения разрешения в...

405
Подождите, пока все обещания не будут выполнены, даже если некоторые отклонены

Допустим, у меня есть набор 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 =>...

284
Как отказаться от асинхронного / ожидающего синтаксиса?

Как я могу отклонить обещание, возвращаемое функцией async / await? например, первоначально foo(id: string): Promise<A> { return new Promise((resolve, reject) => { someAsyncPromise().then((value)=>resolve(200)).catch((err)=>reject(400)) }); } Перевести на async / await async foo(id:...

280
Разрешить Javascript Promise вне области действия функции

Я использую ES6 Promise. Обычно Обещание конструируется и используется следующим образом. new Promise(function(resolve, reject){ if (someCondition){ resolve(); } else { reject(); } }); Но я делал что-то похожее на приведенное ниже, чтобы проявить решимость снаружи ради гибкости. var outsideResolve;...

267
Обработка ошибок в Promise.all

У меня есть массив Обещаний, с которыми я разрешаю Promise.all(arrayOfPromises); Я продолжаю цепочку обещаний. Выглядит примерно так existingPromiseChain = existingPromiseChain.then(function() { var arrayOfPromises = state.routes.map(function(route){ return route.handler.promiseHandler(); });...

262
Нужно ли возвращаться после досрочного разрешения / отклонения?

Предположим, у меня есть следующий код. function divide(numerator, denominator) { return new Promise((resolve, reject) => { if(denominator === 0){ reject("Cannot divide by 0"); return; //superfluous? } resolve(numerator / denominator); }); } Если моя цель состоит в том, чтобы использовать его...

190
Promise.all: Порядок разрешенных значений

Глядя на MDN, похоже, что valuesпереданный в then()обратный вызов Promise.all содержит значения в порядке обещаний. Например: var somePromises = [1, 2, 3, 4, 5].map(Promise.resolve); return Promise.all(somePromises).then(function(results) { console.log(results) // is [1, 2, 3, 4, 5] the guaranteed...

174
Является ли Node.js нативной обработкой Promise.all параллельно или последовательно?

Я хотел бы прояснить этот момент, так как документация не слишком ясна по этому поводу; Q1:Promise.all(iterable) выполняется ли обработка всех обещаний последовательно или параллельно? Или, более конкретно, это эквивалент выполнения цепных обещаний, таких как...

161
Axios получает доступ к полям заголовка ответа

Я создаю веб-приложение с React и Redux и использую axios для выполнения своих запросов. Я хотел бы получить доступ ко всем полям в заголовке ответа. В своем браузере я могу проверить заголовок и увидеть, что все необходимые мне поля присутствуют (например, токен, uid и т. Д.), Но когда я вызываю...

149
Как я могу синхронно определить состояние JavaScript Promise?

У меня есть чистое обещание JavaScript (встроенная реализация или poly-fill): var promise = new Promise(function (resolve, reject) { /* ... */ }); Согласно спецификации , Promise может быть одним из: «решен» и «решен» «урегулирован» и «отклонен» «В ожидании» У меня есть случай, когда я хочу...

131
Возврат обещаний из действий Vuex

Недавно я начал переносить вещи с jQ на более структурированный фреймворк - VueJS, и мне это нравится! Концептуально Vuex стал для меня своего рода сдвигом парадигмы, но я уверен, что знаю, о чем идет речь, и полностью понимаю! Но есть несколько небольших серых областей, в основном с точки зрения...

127
Почему я не могу добавить внутрь обработчика Promise.catch?

Почему я не могу просто вызвать Errorобратный вызов внутри catch и позволить процессу обрабатывать ошибку, как если бы она была в любой другой области? Если я не сделаю console.log(err)ничего, ничего не распечатывается, и я ничего не знаю о том, что произошло. Процесс просто заканчивается ......

121
Как использовать Typescript с собственными обещаниями ES6

Я полный новичок в Typescript, и мне интересно, можно ли использовать обещания ES6 в Typescript и что мне нужно сделать, чтобы они заработали. Я использую узел 0.11.14 и во время компиляции получаю сообщение об ошибке «Не могу найти имя...

111
Отменить обычную цепочку обещаний ECMAScript 6

Есть ли способ очистки .thenкода JavaScriptPromise экземпляра ? Я написал тестовую среду JavaScript поверх QUnit . Платформа запускает тесты синхронно, выполняя каждый из них в файле Promise. (Извините за длину этого блока кода. Я прокомментировал его как можно лучше, так что он кажется менее...

104
Почему Javascript ES6 Promises продолжает выполнение после разрешения?

Насколько я понимаю, обещание - это то, что может разрешить () или отклонить (), но я был удивлен, обнаружив, что код в обещании продолжает выполняться после вызова решения или отклонения. Я считал, что функция resolve или reject является асинхронной версией exit или return, которая остановит все...

101
Обещания, передайте дополнительные параметры в цепочку

Обещание, например: var P = new Promise(function (resolve, reject) { var a = 5; if (a) { setTimeout(function(){ resolve(a); }, 3000); } else { reject(a); } }); После вызова метод в обещании: P.then(doWork('text')); Функция doWork выглядит так: function doWork(data) { return function(text) { //...