大佬教程收集整理的这篇文章主要介绍了jquery – 了解Deferred.pipe(),大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经很了解一切,但@L_197_0@管。我真的没有得到它是什么。
有些人可以帮助我了解它的作用和在哪里可以使用?
我知道有一个问题就像这样(here),但它不一样。我要求帮助了解它和一些例子。另一个问题的目的是为什么在特定情况下不起作用。
我们从一个例子开始,只需要$ .each(),并发出返回一个简单对象的AJAX请求。对于此对象的每个属性,我们希望表单控件的id属性是属性的键,将其值设置为属性的值。我们可以写:
$.ajax("your/url",{ dataType: "json" }).done(function(data) { $.each(data,function(key,value) { $("#" + key).val(value); }); });
现在,我们要在更新表单控件之前,将一些函数应用于值。如果我们在本地做,我们只需要写:
$.ajax("your/url",value) { // doSomethingWith() projects values synchronously,as map() does. $("#" + key).val(doSomethingWith(value)); }); });
但是,如果doSomethingWith()不是客户端实现,而是通过另一个Web服务的服务器端,会发生什么?在这种情况下,我们希望将控制流链接到第二个AJAX请求中,并且只有当第二个请求返回时才更新表单控件。 Deferred.pipe()使得简单:
$.ajax("your/url",{ dataType: "json" }).pipe(function(theOriginalData) { return $.ajax("your/web/service/doSomethingWith",{ data: theOriginalData,dataType: "json" }); }).done(function(theFinalData) { $.each(theFinalData,value) { $("#" + key).val(value); }); });
以上是大佬教程为你收集整理的jquery – 了解Deferred.pipe()全部内容,希望文章能够帮你解决jquery – 了解Deferred.pipe()所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。