Promise/A+规范学习总结

       Promise的实现:因为他只是一个规范,所以在不同的框架或者平台下有不同的实现

 

Angular:$q服务
Node:q模块,co,then
Es6:Promise, yield
Es7:async await

 

    1、规范的内容是什么?

1、不管进行什么操作都返回一个promise对象,这个对象里面会有一些属性和方法(这个效果类似于jquery中的链式编程,返回自己本身)
2、这个promise有三种状态
Unfulfilled(未完成,初始状态)
Fulfilled(已完成)
Failed(失败、拒绝)
3、 这个promise对象的使用时通过then方法进行的调用

 

 

 

       2、怎么对promise对象的状态进行改变?

1、 通过$q服务的deffer方法定义出来一个延迟对象。

 

 

2、 这个延迟对象都有三个方法
1)resolved方法:当数据请求成功的时候调用,参数是成功返回的数据对象,把promise对象Unfulfilled状态改为fulfilled状态。
2)rejected方法:当数据请求失败的时候调用,参数是失败的原因,把promise对象Unfulfilled状态改为failed状态。
3)怎么知道在promise中调用哪个回调函数那,就是通过promise对象的状态进行判断的。

 

posted @ 2016-12-14 09:01  小旭的blog  阅读(343)  评论(0编辑  收藏  举报