这种场景信赖用过promise的人都知道话苄很多,那么类似这种就是所谓的链式Promise。
链式Promise是指在当前promise达到fulfilled状况后,即开端进行下一?promise(后邻promise)。那么我们若何连接当前promise和后邻promise呢?(这是这里的可贵)。
其实也不是辣么难,只要在then办法琅绫擎return一个promise就好啦。Promises/A+规范中的2.2.7就是这么说哒(微笑容)~
下面来看看这段隐蔽玄机的then办法和resolve办法改革代码:
- function Promise(fn) {
- var state = 'pending',
- value = null,
- callbacks = [];
- this.then = function (onFulfilled) {
- return new Promise(function (resolve) {
- handle({
- onFulfilled: onFulfilled || null,
- resolve: resolve
- });
- });
- };
- function handle(callback) {
- if (state === 'pending') {
- callbacks.push(callback);
- return;
- }
推荐阅读
16. 美国法律论坛71万账户泄漏,涉国度安然局、FBI等本年4月,达拉斯紧急警备孀体系被黑客入侵。导致该城市的156个紧急戒备器被激活,警笛声持续一个小时,激发市平易近惊恐。 在以前的201>>>详细阅读
本文标题:30分钟,让你彻底明白Promise原理
地址:http://www.17bianji.com/lsqh/35631.html
1/2 1