jquery-deferred相关内容
我有一个简单的网址数组,我想用jQuery加载每个网址.我使用的是$.get,但似乎无法使其与$.Deferred一起使用,因此我切换到了$.ajax-我几乎可以使用它了,但是得到的结果却很奇怪.我希望有人能帮助我更好地完成这项工作. var results = [], files = [ 'url1', 'url2', 'url3' ]; $.when( $.ajax(fil
..
我有一系列简单的事件: 从metaData表获取列(异步) 加载选定的列(异步) 渲染列表 我以前只是链接这些函数,每个函数完成后都会调用下一个.但是,发生的情况不是很明显(调用getColumnsFromMeta会导致填充视图).因此,为了清晰起见和代码重用,我想使用JQuery Promises重构它们.我以前用过诺言.但是,如何链接两个以上? getColumnsFromMe
..
Fyi,我才刚刚开始学习jQuery Promise,所以在这里我可能会有些困惑. 无论如何,我有一个AJAX请求,我想根据响应的内容从完成的过滤器中拒绝该请求: return doAJAXRequest().then(function (data) { if (data.responseText == "YES") { return doOtherAJAXRe
..
有什么想法如何将JQuery的延迟方法与可检测所有更改的表单并将其作为Ajax帖子提交的函数一起使用? 如果我只是列出大量表单提交但如果我使用...,我可以得到同样的效果. $('form.changed').each(function(){ return $(this).submitWithAjax(); }); 我要开始使用的代码的完整版本在这里... 在JS Fiddle
..
我有一个通过navigator.geolocation获取位置的函数: var getLocation = function( callback ){ navigator.geolocation.getCurrentPosition( callback || function( position ){ // Stuff with geolocation
..
我有两个抽象的过程(例如,使用不公开其内部结构的显示模块模式在js对象中进行管理)会触发 jQuery 1.5中新的延迟逻辑似乎是一种理想的方法要对此进行管理,除了when()方法采用了返回了promise()的Deferred对象(或普通js对象,但是when()立即完成而不是等待完成,这对我来说是没有用的). 理想情况下,我想执行以下操作: //execute when both
..
阅读了几篇文章后,我知道jQuery中已经实现了promise实现.但是我不确定是否有任何版本的jQuery兼容Promise/A. 解决方案 2015年更新:jQuery 3.0与Promises/A +兼容.请参见此问题在GitHub上,因此3.0 beta与3.0兼容,而当3.0退出时,它也会兼容.在此之前-以下内容仍然适用. 所有jQuery版本(最高3.0版)都具有违约承诺
..
function1 = function(){ something.on('transitionend', function(){ // now function2 should run }); } function2 = function(){ alert('ok'); } function1(); function2(); 所以我听说了jQuery Promis
..
我仍在尝试绕过 deferred 不,所以考虑到这一点,我对如何执行以下操作提出了疑问. 我的团队和我有3个单独的.load()方法,每个方法都抓取一个特定的模板并将其附加到同一容器中.每次加载花费的时间可能与您想象的不同,因此,在加载内容时,它以“阶梯式"方式加载(先是1,然后是2,然后是3).我想使用 deferred对象,然后等到它们完成所有操作,然后同时添加它们以删除“阶梯"操作.
..
在使用jQuery.when()等待多个ajax请求完成之前,我遇到了一个问题,然后调用了另一个函数. 每个ajax请求都将获取JSON数据,如下所示: function loadData(arg){ var ajaxCall = $.ajax( URL // depends on arg ) .error(
..
除了jQuery版本以外,Deferred和Promise有什么区别? 我该怎么用?我只想调用fooExecute().例如,我只需要fooStart()和fooEnd()来切换html div状态. //I'm using jQuery v2.0.0 function fooStart() { /* Start Notification */ } function fooEnd()
..
我对使用Promises还是很陌生,很难把头放在jQuery延迟上. 我目前拥有的是在特定点执行的一系列函数: while (queue.length) { (queue.shift())(); } 问题是,其中一些功能是异步的,但我需要它们一个接一个地运行. 因此,队列中的某些函数会返回延迟(例如,通过jQuery.ajax()),而某些只是普通函数.我想知道
..
我正在创建一个ajax实用程序来与我的服务器方法进行接口.我想从jQuery.ajax()调用返回的对象中利用jQuery 1.5+延迟方法.情况正在发生. 服务器端方法始终返回JSON对象: { success: true|false, data: ... } 客户端实用程序会像这样发起ajax调用 var jqxhr = $.ajax({ ... }); 问题区域
..
我正在尝试使用jQuery.when触发两个ajax请求,然后在两个请求完成后调用某些函数.这是我的代码: var count = 0; var dfr; var showData = function(data) { dfr.resolve(); alert(count); // Do something with my data data received };
..
有人可以帮助我吗? 我无法理解$.ajax的success和.done()之间的区别. 如果可能,请举例. 解决方案 简而言之,将成功回调函数与ajax函数解耦,以便稍后您可以添加自己的处理程序,而无需修改原始代码(观察者模式). 请从此处找到更多详细信息: https://stackoverflow.com/a/14754681/1049184
..
jQuery 1.5添加了“延迟对象".它们是什么,它们的作用到底是什么? 解决方案 延迟对象 从jQuery 1.5开始,Deferred对象提供了一种将多个回调注册到自我管理的回调队列中,酌情调用回调队列以及中继任何同步或异步函数的成功或失败状态的方法. 延迟的方法: deferred.done() 添加要在解析Deferred对象时调用的处理程序. defe
..
我有3层深度的递延ajax调用链,理想情况下,当最深层结束时,它们将完全兑现承诺(这使我很感冒……“我们需要更深入!" ). 问题是我要一次发送许多ajax请求(可能是数百个),并且需要推迟直到所有请求都完成为止.我不能依靠最后完成的最后一个. function updateAllNotes() { return $.Deferred(function(dfd_uan) {
..
我有一个需要按一定顺序加载数据的应用程序:根URL,然后是架构,然后最终使用各种数据对象的架构和url初始化应用程序.当用户浏览应用程序时,数据对象将被加载,针对架构进行验证并显示.当用户对数据进行CRUD时,这些模式将提供首过验证. 我在初始化时遇到问题.我使用Ajax调用来获取根对象$ .when(),然后创建一个promise数组,每个模式对象一个.那个有效.我在控制台中看到了抓取内容
..
@Domenic关于jQuery延迟对象的失败有一篇非常详尽的文章:您错过了承诺的重点.与其他内容相比,Domenic重点介绍了jQuery Promise的一些失败,包括 Q ,when.js,RSVP.js和ES6 Promise. 从Domenic的文章中我感觉到jQuery承诺从概念上讲是固有的失败.我正在尝试举例说明这个概念. 我认为jQuery实现有两个问题: 1.
..
我一直在阅读有关jQuery的递归和诺言,但看不到使用.then()和&的区别. .done()成功回调.我知道 Eric Hynds 提到了.done()和.success()映射具有相同的功能,但我猜.then()也是一样,因为所有回调都在成功完成操作后被调用. 有人可以启发我正确使用吗? 解决方案 解决延迟问题后,将触发附加到done()的回调.拒绝延期时,将触发附加到fail
..