当前位置:首页 > 日记 > 正文

承诺对象的角度(Q介绍)

承诺对象的角度(Q介绍)
当你使用jQuery时,你知道承诺是js异步编程的一种模式,但它并不能真正理解jQuery延迟对象之间的区别。随着公司项目的继续,它需要从后台接收数据,所以决定这么做。

承诺

承诺是一种以异步操作的形式运行异步事件的模式,避免了层嵌套,并且可以通过链操作异步事件。

我们知道在编写Javascript异步代码时,回调机制是最简单的,但是用这种机制,它必须牺牲控制流、异常处理和语义函数的代价,甚至让我们陷入回调的弹坑,并解决承诺的问题。

在6,内置AngularJS内置Q承诺,AngularJS,当所有的承诺 /规格如下:

每个任务有三种状态:未完成(待定)、完成(完成)和失败(拒绝)。

1.pending状态:可以转移到性能或拒绝状态。

2.fulfilled状态:不能改变任何其他州和国家是无法改变的,必须有一个值。

3.rejected状态:不能改变任何其他州和国家是无法改变的,一定有原因。

国家转移是一次性的,一旦国家完成(完成)或失败(失败/拒绝),就不能再改变了。

复制代码代码如下所示:

功能oktogreet(name){

返回的名称= 'robin罩;

}
功能asyncgreet(name){

VaR q.defer美元递延=();
setTimeout(){()函数(

由于在将来异步异步实现中,我们将代码包放在应用程序调用中,同时对模型的更改进行正确的观察。

$范围($)函数(){()

deferred.notify(迎接+姓名+'。);
如果(oktogreet(名字)){

deferred.resolve(你好,+姓名+!);

{人}

deferred.reject('greeting+姓名+是不允许的。);

}

});

},1000);
返回deferred.promise;

}
VaR的承诺= asyncgreet('robin罩);

Promise.then(功能(问候){)

警报(''成功:+祝福);

}函数(原因){

警报('failed:+原因);

}函数(更新){

警报(不通知:+更新);

});
q承诺的基本用法

上面的代码表示的一样q.defer美元建立的几种方法的实例的作用()。异步操作是否成功,并承诺对象的状态是由解决了成功(即待解决);如果异步操作失败,那么状态更改为由拒绝法这是失败的,从待拒绝。最后,回到deferred.promise,我们可以调用链的方法。

JS会有本地的承诺,承诺的对象已经有6,和Firefox和Chrome 32 Beta版本已经实施的基本保证API

在AngularJs q.defferd美元

非常对象被链通过调用对象连接三美元q.defferd.this任务状态的承诺 /规范通过API。

递延的API

对延迟对象的方法

1.resolve(价值):在申报解决(),它表明承诺对象是由待解决。

2.reject(原因):在申报解决(),它表明承诺的对象是从待拒绝。

3.notify(价值):申报通知()表示的承诺对象的未完成的状态,可以多次调用之前解决或拒绝。

递延对象属性

承诺:最后的返回是一个新的延迟对象承诺属性,而不是原来的延迟对象。新的承诺对象只能观察原始承诺对象的状态,但不能修改延迟对象的内部状态,以便外部修改任务状态。

承诺的API

创建一个延期审时,一个新的承诺的对象被创建和引用可以通过deferred.promise。

允诺对象的目的是允许延迟任务的感兴趣部分在任务完成时获得其执行结果。

允诺对象法

的1.then(程序,fulfilledhandler,progresshandler):方法是用来监视的promise.errorhandler不同状态听失败的国家,fulfilledhandler监控实现的状态,和progresshandler监视器未完成(未完成)的状态。另外,通知回调可以打0多次,在解决或拒绝提供进度指示器(解决了)。

对2.catch快捷(errorCallback)-- promise.then(null,errorCallback)

3.finally(回调)-让你看看一个承诺正在执行或拒绝,但这并不能改变最终的价值。这可以用来做一些工作来释放资源或清理无用的物体,无论承诺是拒绝或解决。有关更多信息,请参阅完整的文档规范。

允诺链调用可以由当时()方法实现。

复制代码代码如下所示:

promiseb = promisea.then(功能(结果){

返回结果+ 1;

});
将 / / promiseb是经过加工promisea立即处理,

/ /和它的价值是promisea效果增加1
q的其他方法

q.when美元(价值):通过变量的值,promise.then()执行成功的回调

q.all美元(承诺):多承诺必须成功执行回调函数执行成功。传递的值是数组或散列值。数组中的每个值都是与索引相对应的承诺对象。

相关文章

当前页面导航激活的Javascript实现

当前页面导航激活的Javascript实现

导航,激活,页面,电脑软件,Javascript,本文演示了Javascript如何实现当前页面导航激活: 部分的HTML(参考导航是不是#链接测试可以创建几个静态页面不可用,) 首页 HTML / CSS Javascript SEO 前端的新闻 Javascript部分(指定当前页的导航,并带有on的类) $(函数(){()) VaR A1…

当前页面标签高亮显示的jQuery实现

当前页面标签高亮显示的jQuery实现

标签,高亮显示,页面,电脑软件,jQuery,本文演示了jQuery实现当前页面标签突出显示的方式: 功能导航(名称、csskey,cssvalue){ var url = window.location.pathname + window.location.search; var; $(name)。每个(函数(){) V1 = / + $(this).Attr (href)…

PS图象处理软件更改背景颜色为透明

PS图象处理软件更改背景颜色为透明

透明,背景颜色,图象,处理软件,电脑软件,本教程介绍朋友到PS图象处理软件来改变图片的背景颜色为透明色的方法。非常适合初学者学习。 在我们的P图,很多事情需要从当前图片的背景色去掉。所以PS图象处理软件介绍图片的背景颜色为透明色的方法…

PS图象处理软件是完美的身材光修复

PS图象处理软件是完美的身材光修复

面罩,图象,处理软件,身材,完美,材料的图片是塑料袋的图片,和角和反射效果不是很理想的时候拍摄的。过程:当第一个产品图进行调整,然后通道提取表面印刷复制;根据原材料手工绘制高亮度的光和暗,和然后添加一点局部纹理细节。 材料的图片是塑料袋…

在点击和div点击之外不会隐藏的jQu

在点击和div点击之外不会隐藏的jQu

控件,电脑软件,div,jQuery,本文的示例讲述了jQuery在外部点击时控制div的方式,而div中的单击并没有隐藏: 例如,有一个div,它的ID是主体,实现是隐藏在div之外的,div中的点击没有隐藏,jQuery的实现如下: 复制代码代码如下:$(#体)。Click(function(e){ 美…

电影海报教程PS合成酷I,机器人

电影海报教程PS合成酷I,机器人

教程,电影海报,电脑软件,PS,春节期间,每天都会有一张好莱坞经典的海报发布出来,影片的质量相当高,之后是手、上姿势和放松两个。第二部电影是7.9豆的得分,我,机器人。 春节期间,每天都会有一张好莱坞的经典教程发布,影片的质量是相当高的,在一方面,…

12个小提示PS图象处理软件

12个小提示PS图象处理软件

图象,小提示,处理软件,电脑软件,PS,当你处理多层文件时,很容易将图层叠加到山上,也许你是一个粗心的设计师,所以你从不需要更改图层的名称。 1。这层是空的吗 当你处理多层文件时,很容易把图层叠加到山上,也许你是一个粗心的设计师,所以你从不想…

在jQuery中使用每个$的详细解决方

在jQuery中使用每个$的详细解决方

解决方案,详细,电脑软件,jQuery,通过它,您可以遍历对象和数组的属性值并处理它。 指令 基于参数类型的每个函数的效果并不完全一致。 1。遍历对象(带有附加参数) 每个(对象,函数(P1,P2){) 这里,这里用于对当前属性值中的每一个迭代进行对象处理。 …

PS图象处理软件使用一个过滤器使冷

PS图象处理软件使用一个过滤器使冷

冷却,软件使用,图象处理,过滤器,海报,本教程主要是通过制作一个很酷的过滤效果灯海报的全过程解释PS图象处理软件的使用,使一个很好,很全面,值得推荐给想学习PS的朋友 重点是光和阴影部分的产生。基本上,它是用过滤器完成的。我们需要使用各种…

PS图象处理软件推出了五种抠图方法

PS图象处理软件推出了五种抠图方法

方法,抠图,五种,图象,处理软件,本文主要介绍一种PS图象处理软件抠图:图五拉法,喜欢的朋友可以一起学习 首先坚持原来的地图 首先使用钢笔或套索工具勾出角色的主要部分。当我们做这件事时,我们必须注意它。蚂蚁线不要太靠近边缘,不能出去,否则…

2015最新QQ情感个性签名

2015最新QQ情感个性签名

个性签名,情感,最新,电脑软件,QQ,据说时间教会了我们许多东西,但时间改变了那些不够坚强的东西。时间也可能错过了什么,但我们得到的是坚韧和成熟。 我喜欢一个人旅行,所以我去过太多的地方,而且我已经看了太多的风景。 但我最想去的地方还在你…

制作粗糙逼真的CDR教程材料

制作粗糙逼真的CDR教程材料

教程,逼真,材料,电脑软件,CDR,本教程是介绍CDR朋友制作粗料的方法和生动的教程,所制作的素材非常逼真,方法很简单,推荐给朋友,爱好学习。 本教程教朋友用CDR制作粗材料,或者CDR教程着重于材料模拟方法,具体步骤放在图片上,难度很难,每个人都应该能…