-
10 votesanswersviews
在Angular HttpClient拦截器中使用promise
我可以在 HttpInterceptor 内使用诺言吗?例如: export class AuthInterceptor implements HttpInterceptor{ this.someService.someFunction() .then((data)=>{ //do something with data and then return n... -
0 votesanswersviews
在方法中使用Promise返回Observable导致错误
在我的代码中,我有自定义的post方法,它扩展了angular 2的http类 . post(url: string, body: string, options?: RequestOptionsArgs): Observable<any> { if (!this._gs.externalRequest) { let that = this; ... -
0 votesanswersviews
在另一个承诺链中解决承诺并停止该链
我想做一些简单的事情:我希望我的函数返回一个promise(1) . 这个承诺(1)将使用另一个承诺(2)来执行任务 . Promise(2)被链接到多个then / catch步骤 . 在这些步骤中,承诺(1)可能需要被解决/拒绝 . 承诺链(2)需要停止执行,因为现在承诺(1)被解决/拒绝并且应该停止运行 . 最好的方法是什么? 请参阅以下示例代码: function performDiv(... -
0 votesanswersviews
承诺链接和所有
我已经构建了这个我不理解的用例 . 我想创建一个promises数组(示例中为var array )并添加解析数组中每个元素的所有promise . 可选地,对于阵列的某些元素,我想做一个额外的细化,所以我链接另一个 Promise (在 if (e === 'b') 内) . 我希望 Promise.all(array) 能够捕获拒绝条件,但它会打印: > node .\test.js ... -
48 votesanswersviews
承诺回调承诺的回调
关于这两个很大的来源:NZakas - Returning Promises in Promise Chains和MDN Promises,我想问一下: 每次我们从promise履行处理程序返回一个值时,该值是如何传递给从同一个处理程序返回的新promise? 例如, let p1 = new Promise(function(resolve, reject) { resolve(42);... -
2 votesanswersviews
我应该在派遣时捕获Redux promise错误还是只在reducer中处理它?
所以基本上我用thunk和redux-promise-middleware调度一个动作,它产生一个返回promise的API调用 . 然后,我将承诺返回给另一个动作创建者作为“有效负载”参数,该参数与redux-promise-middleware一起使用,并处理不同的动作MY_ACTION_TYPE_PENDING或MY_ACTION_TYPE_REJECTED或MY_ACTION_TYPE_F... -
3 votesanswersviews
传递(object.function)作为参数
我正在使用_2480368构建一个简单的拖放上传器但是当我尝试传递一个方法(object.function)作为promise的回调函数的参数解析/拒绝时,我得到一个 Uncaught SyntaxError: Unexpected token . . 我正在寻找组织我的承诺回调作为 resolve 和 reject 对象下面的方法,所以在上传的情况下它将是 resolve.upload 和 r... -
26 votesanswersviews
为什么来自JavaScript fetch API的响应对象是一个承诺?
从具有JavaScript fetch API的服务器请求时,您必须执行类似的操作 fetch(API) .then(response => response.json()) .catch(err => console.log(err)) 在这里, response.json() 正在履行其承诺 . 问题是,如果您想要捕获 404 's errors, you have t... -
1 votesanswersviews
获取api - 在两者中获取json body并捕获块以获取单独的状态代码
我使用fetch api来获取可能返回的URL: 响应:status = 200,json body = {'user':'abc','id':1} 要么 回复:状态= 400,json body = {'reason':'某种原因'} 要么 回复:状态= 400,json body = {'reason':'其他原因'} 我想创建一个单独的函数 request() ,我在代码的各个部... -
26 votesanswersviews
为什么来自JavaScript fetch API的响应对象是一个承诺?
从具有JavaScript fetch API的服务器请求时,您必须执行类似的操作 fetch(API) .then(response => response.json()) .catch(err => console.log(err)) 在这里, response.json() 正在履行其承诺 . 问题是,如果你想要捕获 404 's errors, you have t... -
11 votesanswersviews
Javascript:承诺链与异步/等待?
我正在学习Javascript Promise 和 async / await . 下面的示例代码异步读取并解析node.js( my node.js version is v10.0.0 )中的JSON文件 . 在示例代码中,ChainReadJson函数和AwaitReadJson函数正在做同样的事情,读取和解析JSON文件 . 不同之处在于ChainReadJson函数使用promi... -
1 votesanswersviews
在注册服务工作者之前尝试运行获取功能 .
我正在尝试运行一个获取函数,它将从我的服务器获取一些值 . 但由于某种原因,服务工作者的注册首先触发,并且其“app_key”未定义,导致它抛出异常 . 这似乎是一种竞争条件,我不知道如何解决 . 我不确定如何将值分配给变量以确保它们可被其他函数看到 . 任何建议,将不胜感激 . project_url = window.location.hostname; var vapi_key; var ... -
1 votesanswersviews
测试承诺链在.catch中结束(使用Mocha / Chai承诺)
我已经看到很多关于测试Promise拒绝的信息,但是想知道如果有人知道怎么写一个测试,如果一个promise链没有以'.catch'结尾会失败?我正在努力防止吞噬错误 . 例如,这将通过测试: doSomething() // returns a Promise .then(doSomethingElse) ... -
1 votesanswersviews
与mocha / chai和ES6 Promise断言的奇怪失败
我遇到了ES6 Promise和一些mocha / chai测试的奇怪行为 . 考虑以下 foo() 函数返回一个promise,我想测试两件事: 它返回一个promise(所以,一个对象) 它在失败时抛出异常(以及对象) . 问题是,在测试 expect(..).to.be.an('object') 两种情况下都失败了,但类型 is object (用 typeof 检查) . ... -
3 votesanswersviews
使用Mocha时,超时超时错误
在使用 Mocha 进行测试时,我在运行server.test.js时遇到以下错误 1)“每个”钩子之前“应该得到所有待办事项”:错误:超过2000毫秒超时 . 对于异步测试和挂钩,确保调用“done()”;如果返回Promise,请确保它已解决 . server.test.js const expect = require('expect'); const request = requir... -
0 votesanswersviews
返回承诺时摩卡超过2000毫秒超时[重复]
这个问题在这里已有答案: Change default timeout for mocha 4个答案 我正在尝试测试我的Express.js控制器,但每次经常遇到mocha超时告诉我的问题 . 文档(https://mochajs.org/#working-with-promises)和答案在这里:https://stackoverflow.com/a/26572442/1646372声明我可... -
3 votesanswersviews
在redux状态下放置返回promise的函数
我会解释为什么我想稍后这样做 . 这是问题所在 . 我有一个返回如下承诺的函数: const testFunc = () => { return new Promise((resolve, reject) => { setTimeout(() => { if (Math.random() > 0.5) { resolve('succ... -
46 votesanswersviews
fromPromise在Observable类型中不存在
在使用rxjs的Angular 2中,我试图将Promise转换为Observable . 由于许多在线指南显示我在 Observable 上使用了 fromPromise . 哪个抛出错误: Property 'fromPromise' does not exist on type 'typeof Observable'. Observable导入如下: import { Observabl... -
92 votesanswersviews
Node.js是原生的Promise.all并行或顺序处理吗?
我想澄清这一点,因为documentation对此并不太清楚; Q1: 是 Promise.all(iterable) 顺序还是并行处理所有承诺?或者,更具体地说,它是否相当于运行链式承诺 p1.then(p2).then(p3).then(p4).then(p5).... 或者是其他类型的算法,其中所有 p1 , p2 , p3 , p4 , p5 等同时被调用(并行)并且一旦所有解析(或一个... -
1 votesanswersviews
NodeJS,承诺和表现
我的问题是我的NodeJS应用程序的性能... 如果我的程序运行12次迭代,每次1.250.000 = 15.000.000次迭代 - 它需要亚马逊的专用服务器以下时间来处理: r3.large:2个vCPU,6.5个ECU,15个GB内存 - > 123分钟4.8xlarge:36个vCPU,132个ECU,60个GB内存 - > 102分钟 我在下面的代码中有一些代码simil... -
14 votesanswersviews
使用redux-form和Fetch API进行服务器验证
如何使用redux-form和Fetch API进行服务器端验证?文档中提供了“Submit Validation”演示,其中说服务器端验证的推荐方法是从onSubmit函数返回一个promise . 但是我应该把这个承诺放在哪里?据我所知,onSubmit函数应该是我的动作 . <form onSubmit={this.props.addWidget}>... this.props... -
6 votesanswersviews
节点回调承诺使用async / await
我正在尝试编写一个将节点式回调函数转换为promises的简单函数,因此我可以将它们与async / await一起使用 . 当前代码: function toPromise(ctx, func, ...args) { let newPromise; args.push((err, res) => { newPromise = new Promise((resolve, r... -
1 votesanswersviews
undefined不是一个对象(评估Promise .then)
我在开发反应原生移动应用程序时遇到此错误 . fetchDB 函数将返回一个promise fetchDB(key) { try { AsyncStorage.getItem(key, result => { return result; }); } catch (error) { console.log(error); ... -
1 votesanswersviews
Javascript for Error()中的'new'运算符处理[重复]
这个问题在这里已有答案: throw Error('msg') vs throw new Error('msg') 2个答案 我正在使用Promises,并发现当建议拒绝传递 Error() 对象作为参数时,为了启用错误处理 . 我找到了一些例子,其中给出了 new Error() ,而另一些例子只传递了 Error() . 在测试了几个案例之后,我发现在一个用法和另一个用法之间没有任何区别... -
0 votesanswersviews
仅在用户在React.js中提供输入后才解析promise
假设我已经安装了一个名为 something 的第三方反应组件库,它通过 onRequestName prop 调用给它的 async 函数 . something 将使用异步函数中已解析的数据来呈现结果 . <Something onRequestName={this.asyncFunction}/> 我的 async 函数 requires 用户输入,我想在用户提供输入时解析... -
101 votesanswersviews
为什么我不能扔进Promise.catch处理程序?
为什么我不能在catch回调中抛出 Error 并让进程处理错误,就好像它在任何其他范围内一样? 如果我不这样做 console.log(err) 什么都没打印出去,我对发生的事情一无所知 . 这个过程刚刚结束...... 例: function do1() { return new Promise(function(resolve, reject) { throw new... -
128 votesanswersviews
处理Promise.all中的错误
我有一个Promise数组,我正在使用Promise.all(arrayOfPromises)解析; 我接着继续承诺链 . 看起来像这样 existingPromiseChain = existingPromiseChain.then(function() { var arrayOfPromises = state.routes.map(function(route){ return ... -
62 votesanswersviews
如何调试javascript承诺?
我试图了解如何调试基于promises的异步代码 . By Promises我的意思是基于ECMAScript 6的承诺,通过调试我的意思是使用内置的chrome或firefox调试器 . 我遇到的问题是 - 当发生错误时,无论我如何拒绝它,我都无法获得堆栈跟踪 . 我试过这些: console.log(new Error('Error occured')); throw new Error('... -
4 votesanswersviews
Javascript Promises:链接相同的承诺n次,然后做其他事情
我有一个承诺返回函数,它做了一些异步的东西,让我们称之为 functionToRepeat() . 我正在尝试编写函数 repeatFunction(amount) ,以便它将启动承诺,等待完成,再次启动它,等待完成,等等一定时间 . 这 repeatFunction(amount) 也应该是可以的,以便我可以在执行后链接其他东西 . 这是我的尝试: function functionToRep... -
3 votesanswersviews
如何处理catch块然后是Promise [复制]
这个问题在这里已有答案: Promise reject() causes “Uncaught (in promise)” warning 1回答 我有以下代码 function request(status){ return new Promise((resolve, reject) => { setTimeout(() => { if(status){ ...