草庐IT

回调签名

全部标签

javascript - 在成员函数回调中获取对象

我有一个带有方法的对象,我想将其作为回调传递给函数。但是,在回调中,this不再引用我的对象。为什么不呢?我熟悉在传递函数文字时使用变量来解决问题:varobj={a:function(){varme=this;console.log(this);setTimeout(function(){console.log(this);//Notobjconsole.log(me);//Thisworks!},100);}};在这种情况下我该如何解决?varobj={b:function(){setTimeout(this.callback,100);},callback:function(){

Javascript OOP - 在异步回调中丢失了它

我在jsoop上遇到的问题仍然困扰着我-我确定我做得不好,但我不知道如何正确地做。比如我有这段代码Auth.prototype.auth=function(){varrequest=newXMLHttpRequest();request.open('GET',this.getAuthServerURL()+'/token',true);request.send();request.onloadend=function(){varresponse=JSON.parse(request.responseText);console.log(response);if(response.resu

javascript - 为什么我的 AJAX 函数多次调用回调?

我制作了一个ajaxpost函数,当我调用它一次时,传递给它的回调函数最终被调用了3次。为什么多次调用回调?我正在尝试使用一种“模块”javascript模式,该模式使用闭包将类似的功能包装在一个全局变量下。我的ajax模块是它自己的文件,看起来像这样:varajax=(function(XMLHttpRequest){"usestrict";vardone=4,ok=200;functionpost(url,parameters,callback){varXHR=newXMLHttpRequest();if(parameters===false||parameters===null|

javascript - 身份验证 - 调用 $http 的 .then() 成功回调而不是错误回调

这可能只是因为误解了如何在MEAN堆栈应用程序中最好地进行身份验证,或者我对promises和$http的.then()方法如何工作缺乏了解,但每当我尝试使用不正确的凭据向我的后端节点服务器进行身份验证,它正在调用$http的.then()方法的成功回调而不是错误回调。这是我的设置:我正在使用jsonwebtoken和express-jwt包,AngularJS拦截器将token添加到请求并检查状态401responseErrors,一个TokenService设置/删除等JWT和一个UserService来处理登录、注销等。从调试来看,这是正在发生的事情:发送登录请求服务器捕获请求,

javascript - 如何将多个列表从 Controller 操作返回到 ajax 成功回调函数

我正在创建一个mvc.net项目,其中我有如下jqueryajax请求$.ajax({url:"@Url.Action("getdata","SeatPlans")",data:{seat_plane_id:17},type:"POST",dataType:"json",success:function(data){loadData(data);},error:function(){alert("Failed!Pleasetryagain.");}});调用以下Controller操作publicJsonResultgetdata(intseat_plane_id){intlid=se

javascript - 如何通过签名 URL 在 S3 对象上定义 Cache-Control header ?

按照thisguide中的说明进行操作,我已经设法让上传通过签名的URL工作。它看起来像这样:consts3=newaws.S3();consts3Params={Bucket:S3_BUCKET,Key:fileName,Expires:60,ContentType:fileType,ACL:'public-read',CacheControl:'public,max-age=31536000',};s3.getSignedUrl('putObject',s3Params,(err,data)=>{//...});...除了我的CacheControl参数(我自己添加;它不在指南中)

javascript - 在 jQuery 回调中获取父对象

这是我的问题:vargreatapp={start:function(){$.AJAX({url:'foo.com',success:function(data){greatapp.say(data);}})},say:function(s){console.log(s);}}我不喜欢这个例子的事实是,我在success函数中通过定义对象的名称而不是仅仅this来重复我自己,这显然赢了无法工作,因为它在外部函数中。如何在JS对象中只使用一次名称greatapp? 最佳答案 一个常见的JavaScript习惯用法是将this的值保存到

javascript - javascript 回调中错误参数的更正确位置是什么?

我正在编写一个接受回调的javascript函数。如果出现问题,回调将传递一个错误参数。什么是最好/最标准的调用约定?回调的错误参数应该是第一个还是最后一个?我应该传递一个'errorMsg'字符串,还是一个newError('errorMsg')对象?即,更正确的是-这段代码:foo=function(bar,callback){...if(error){callback('troznotfound');}else{callback(null,result);}}或此代码:foo=function(bar,callback){...if(error){callback(null,'t

javascript - JQuery UI 自动完成回调

是否可以为输入定义一个回调函数JQueryAutocomplete插件已应用于。我实际上想在onchange事件上执行一些操作,但奇怪的是,它在设置值之前被触发了。当触发onchage事件时,输入为空值。 最佳答案 跟随js1568的回答。方法如下。$('selector').autocomplete({...change:function(event,ui){//yourcode},close:function(event,ui){//yourcode}})如果您希望在用户选择一个值后触发您的代码,也可以使用关闭事件。

javascript - 使用 jQuery 延迟 - when() 和 getJSON() 回调

我正在尝试了解jQuery中的when函数和延迟对象。$.when($.getJSON('/echo/json',function(){console.log('sucess');},function(){console.log('error');})).then(console.log('getJSONready!'));这个例子返回:getJSONready!sucess...但我想首先触发成功回调:sucessgetJSONready!我该怎么做?http://jsfiddle.net/lukaszr/rBFmL/ 最佳答案