内部$http调用完成后执行函数-AngularJS
在我的代码中,我调用这个函数内部$http调用完成后执行函数-AngularJS,angularjs,Angularjs,在我的代码中,我调用这个函数loadAllOrders()。这是其实施的框架 $scope.loadAllOrders = function() { orderSvc.GetAllOrders().then(function(response) { // Does a bunch of stuff here }); } GetAllOrders()使用$http从数据库获取数据loadAllOrders()然后格式化所有数据并将它们插入到ng repeat中 我希
loadAllOrders()代码>。这是其实施的框架
$scope.loadAllOrders = function() {
orderSvc.GetAllOrders().then(function(response) {
// Does a bunch of stuff here
});
}
GetAllOrders()
使用$http
从数据库获取数据loadAllOrders()
然后格式化所有数据并将它们插入到ng repeat
中
我希望能够在loadAllOrders()
完成后调用函数。比如说,
$scope.loadAllOrders().then(
//I am doing something
);
如何实现这一点?您可以在angular JS中为LoadAllorder编写自定义承诺
您必须注入$q服务作为对控制器或服务的依赖
$scope.loadAllOrders = function() {
var deferred = $q.defer();
orderSvc.GetAllOrders().then(function(response) {
// Does a bunch of stuff here
deferred.resolve(response);
});
return deferred.promise;
}
希望这对您有所帮助您可以在angular JS中为LoadAllorder编写自定义承诺
您必须注入$q服务作为对控制器或服务的依赖
$scope.loadAllOrders = function() {
var deferred = $q.defer();
orderSvc.GetAllOrders().then(function(response) {
// Does a bunch of stuff here
deferred.resolve(response);
});
return deferred.promise;
}
希望这有助于您的承诺
实现此目标您的承诺
实现此目标如何在承诺返回后执行此函数?$scope.loadAllOrders()。然后(函数(结果){});就像你在问题上写的一样,小心承诺反模式。只需返回orderSvc.GetAllOrders()
即可返回承诺。在承诺返回后,如何执行函数?$scope.loadAllOrders().then(函数(结果){});就像你在问题上写的一样,小心承诺反模式。只需返回orderSvc.GetAllOrders()
即可返回承诺。