Chapter 8: Understanding and implementing a basic promise
HTML
<script src="https://code.angularjs.org/1.3.2/angular.min.js"></script>
<div ng-app="myApp">
<div ng-controller="Ctrl"></div>
</div>
JavaScript
angular.module('myApp', [])
.controller('Ctrl', function ($q, $log) {
var deferred = $q.defer()
, promise = deferred.promise;
// $log.info is the resolve handler,
// $log.error is the reject handler
promise.then($log.info, $log.error);
deferred.resolve('ok');
// (info) 123
// reset to demonstrate reject()
deferred = $q.defer();
promise = deferred.promise;
promise.then($log.log, $log.error);
deferred.reject('fail');
// (error) 123
});