AngularJS $http promises
by Gabriel
HTML
<script src="http://ci.angularjs.org/view/AngularJS/job/angular.js-angular-master/3066/artifact/build/angular.min.js"></script>
<div ng-controller="MainController">
{{ result1 }}
<br>
{{ result2 }}
<br>
{{ result3 }}
<br>
{{ result4 }}
<div>
JavaScript
var app = angular.module('myApp', []);
app.controller("MainController", function ($scope, $q, $http) {
var fetchFromServer = function (mockFail) {
return $http.get("http://api.reddit.com/hot", function () {
if (mockFail) {
return $q.reject();
}
});
};
fetchFromServer().then(function () {
$scope.result1 = "success";
}, function () {
$scope.result1 = "error";
});
fetchFromServer(true).then(function () {
$scope.result2 = "success";
}, function () {
$scope.result2 = "error";
});
var fetchFromServer2 = function (mockFail) {
return $http.get("http://api.reddit.com/hot").then(function () {
if (mockFail) {
return $q.reject();
}
});
};
fetchFromServer2().then(function () {
$scope.result3 = "success";
}, function () {
$scope.result3 = "error";
});
fetchFromServer2(true).then(function () {
$scope.result4 = "success";
}, function () {
$scope.result4 = "error";
});
});