如何将我的函数返回值传递给父函数
问题描述:
我正在为我的项目使用angular.js,并且我编写了一个服务,其中我有返回患者详细信息,但在控制器中,我没有通过patientinfo()函数调用获取此返回值。 这里是我的服务代码:如何将我的函数返回值传递给父函数
app.service('PatientDetailService', function() {
this.patientinfo = function(){
$.ajax({
dataType: "json",
url: "json/client_info.json",
type: 'get',
error: function(patientdetail){ alert("error");},
success: function(patientdetail){
alert("successs");
console.log(patientdetail);
return patientdetail;
}
});
}
});
答
这是一个异步调用。在AJAX调用完成之前您不会得到结果(此时您的函数将作为事件循环的一部分被调用)。
在执行patientinfo
时,您将不会收到回复 - 相反,您必须设置其他函数来处理结果。
:请你解释一下如何处理结果的一些其他功能,因为我不知道如何处理这个值,我不能得到我的结果。 – 2013-03-11 09:16:07
而是从'patientinfo'返回一个结果,它应该接受一个可以在结果可用时调用的函数。寻找解释JavaScript中异步编程的教程(使用回调)。 [这一个](http://recurial.com/programming/understanding-callback-functions-in-javascript/)似乎很好,但你可能会发现另一个更有帮助。 – 2013-03-11 09:26:52