Angular $scope object get assigned from Service

used $q

by TOJO PAUL

HTML

<div ng-app="myApp" ng-controller="profctrl">
  {{usr}}
  <p>Hello {{usr.name}}!</p>
</div>

JavaScript

var ub = angular.module('myApp', []);
ub.controller('profctrl', ["$scope", "formsub", "$log", "$timeout", function($scope, formsub, $log, $timeout) {
  $log.log("In Profile controller");
  $scope.msg = "";
  $scope.usr = {};

  var fbresponse = {
    name: 'xyz',
    email: 'xyz@gmail.com'
  };
  formsub.getprof(fbresponse).then(function(result) {
    $scope.usr = result;
    alert(JSON.stringfy(result));
  });

}]);

ub.service('formsub', ["$http", "$log", "$q", "$timeout", function($http, $log, $q, $timeout) {
  var user = {};
  var self = this;

  self.msg = "";


  self.getprof = function(user) {
      var deferral = $q.defer();
      $timeout(function() {
        $log.log('user assigned');
        deferral.resolve(user);

      }, 2000);
      return deferral.promise;
    } //getprof

}]);