2.4.2 Angular $q - OhNaNaSun/angularBlog GitHub Wiki

$q

[angular $q $http] 实例分析angular中的promise

angular.module('app', [])
.controller('demoController', function($q, $timeout) {
	var a = 1;
	$q(function(resolve, reject) {
		$timeout(function() {
			if(a == 2) {
				console.log('resolve');
				resolve('hello, JAKE');	
			} else {
				console.log('reject');
				reject('JAKE is not here!')
			}
		}, 2000)
	})
	.then(function(greeting) {
		console.log('success, ' + greeting);	
	}, function(reason) {
		console.log('failed, ' + reason);
	})
})