AngularJS Example:
by g
HTML
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.0.2/angular.min.js"></script>
<div ng-app="app" ng-controller="root">
<h3 ng-hide="user">Not yet loaded</h3>
{{user}}
</div>
JavaScript
angular.module('app', []).
factory('user', function($timeout, $q) {
var value = $timeout(function(){ //Simulate a request
return {
name: "Jossi"
};
},1000);
return {
value: value
};
}).
controller('root',function($scope, user) {
$scope.user = user.value;
// want to do stuff when loaded?
user.value.then(function(userValue){
// do stuff
}, function(error) {
// handle loading error
});
});