请问老师这里为什么是promise
来源:10-4 -4 取消功能的设计和实现 - demo 编写

hy_wang
2020-11-21
老师我有一个疑问
请问下老师
首先b这个axios使用一个已经取消过了的source.token。然后按照我的理解它应该是
throwIfRequested中然后throw this.reason,可是我向问下老师既然已经报错了还可以使用catch接受吗。包括我打印了一下b竟然是promise,b这个axios应该进入到xhr函数之前就throw了。为什么会return了一个promise
写回答
2回答
-
axios.post 内部返回的是 this,request 方法的返回值,而这个返回值返回的就是一个 promise,虽然你执行了 cancel 方法,也只是在整个 PromiseChain 中的 dispatchRequest 方法中执行了 throwIfCancellationRequested,这个完全不会影响 request 方法的返回值
042020-11-22 -
hy_wang
提问者
2020-11-22
我觉得这样和老师axios.request一样的效果,为什么表现结果不同。我比较疑惑,axios.request也是在promise中进行了throw为什么不会直接抛出异常而是进入了catch。
012020-11-22
相似问题