AngularJS with my PHP API: 获取值的工厂(async:false 需要替代)
AngularJS with my PHP API: Factory who get values (async:false need alternative)
两个月前,我开始使用 AngularJS 构建自己的 Web 应用程序,问题是我发现 async: false 已被弃用,我需要用可以工作的东西替换它 :)。
让我向您展示我的脚本示例:
getContent:function(ticketid){
if(sessionService.islogged)
{
$.ajaxSetup({async:false});
var response = null;
var result = $.post( "data/ticket.php",{Action:'getContent',ticketid:ticketid}, function(data) {
response = data;
});
$.ajaxSetup({async:true});
return response;
}
},
以及我在控制器中使用此功能的示例
$scope.ticket = JSON.parse(ticketService.getContent(sessionService.get('ticketID')));
如您所见,我将 POST 请求的结果存储在一个数组中,但如果我删除 async:false,我的脚本将是异步的,我将得到一个未定义的变量..
将回调函数作为变量传递。
getContent:function(ticketid,successCallback){
if(sessionService.islogged)
{
$.ajaxSetup({async:false});
var response = null;
var result = $.post( "data/ticket.php",{Action:'getContent',ticketid:ticketid}, successCallback);
$.ajaxSetup({async:true});
return response;
}
},
并调用getContent函数
sessionService.get('ticketID',function(data) {
$scope.ticket = JSON.parse(data);
})
两个月前,我开始使用 AngularJS 构建自己的 Web 应用程序,问题是我发现 async: false 已被弃用,我需要用可以工作的东西替换它 :)。
让我向您展示我的脚本示例:
getContent:function(ticketid){
if(sessionService.islogged)
{
$.ajaxSetup({async:false});
var response = null;
var result = $.post( "data/ticket.php",{Action:'getContent',ticketid:ticketid}, function(data) {
response = data;
});
$.ajaxSetup({async:true});
return response;
}
},
以及我在控制器中使用此功能的示例
$scope.ticket = JSON.parse(ticketService.getContent(sessionService.get('ticketID')));
如您所见,我将 POST 请求的结果存储在一个数组中,但如果我删除 async:false,我的脚本将是异步的,我将得到一个未定义的变量..
将回调函数作为变量传递。
getContent:function(ticketid,successCallback){
if(sessionService.islogged)
{
$.ajaxSetup({async:false});
var response = null;
var result = $.post( "data/ticket.php",{Action:'getContent',ticketid:ticketid}, successCallback);
$.ajaxSetup({async:true});
return response;
}
},
并调用getContent函数
sessionService.get('ticketID',function(data) {
$scope.ticket = JSON.parse(data);
})