请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

语法不太懂

	let promise = Promise.resolve(config)
    while (chain.length){
      const { resolved, rejected } = chain.shift()!
      promise = promise.then(resolved, rejected)
    }
    return promise

老师,这里的语法不太懂,可以解释一下吗

正在回答

2回答

ustbhuangyi 2019-08-22 15:02:35

https://img1.sycdn.imooc.com//szimg/5d5e3dcb0972c2b110660310.jpg
这个方法已经放在这个 Promise 链中了。
https://img1.sycdn.imooc.com/szimg/5d5e3de609ceb06b12140240.jpg
在这个过程中就会执行 dispatchRequest 函数

建议你系统地去学习和了解一下 Promise ,就能看懂这段代码了。

0 回复 有任何疑惑可以回复我~
  • 提问者 哈哈大笑x #1
    我知道了,.then里面的方法是直接执行的。。。 感谢!
    回复 有任何疑惑可以回复我~ 2019-08-22 15:15:27
  • 提问者 哈哈大笑x #2
    老师,还有一点不懂,就是promise在循环中怎么就执行了一次dispatchRequest这个函数呀
    回复 有任何疑惑可以回复我~ 2019-08-28 00:28:16
  • ustbhuangyi 回复 提问者 哈哈大笑x #3
    循环每次数组在前进呀,每一个当然只执行一次咯
    回复 有任何疑惑可以回复我~ 2019-08-28 10:07:42
ustbhuangyi 2019-08-21 17:37:11

就是循环 chain,获取其中的 resovled 和 rejected 函数,然后用 promise 串联起来。你具体不懂哪里的语法?

0 回复 有任何疑惑可以回复我~
  • 提问者 哈哈大笑x #1
    就串联起来那里不太懂
    promise.then(resolved, rejected)
    还有在哪个时机执行了dispatchRequest这个函数
    回复 有任何疑惑可以回复我~ 2019-08-22 14:29:49
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信