AngularJS Live Example
HTML
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script src="http://code.angularjs.org/1.0.6/angular-resource.js"></script>
<div ng-controller = "fessCntrl">
<ul>
<li ng-click="alertSwap()">
click 1
</li>
</ul>
<ul>
<pre>
data {{data|json}}
</pre>
</ul>
</div>
JavaScript
var app = angular.module('myModule', ['ngResource']);
app.controller('fessCntrl', function ($scope, sadadpaymentapi) {
$scope.alertSwap = function () {
$scope.data = sadadpaymentapi.getData();
};
});
app.$inject = ['$scope', 'leaselisting'];
app.factory('leaselisting', ['$timeout','$q', function($timeout, $q) {
var leaselistingobject = {
getValue: function () {
var deferred = $q.defer();
$timeout(function(){
return {address: 'Singapore, SG, Singapore, 153 Bukit Batok Street 1'};
}, 3000).then(function(val){
deferred.resolve(val);
});
return deferred.promise;
}
};
return leaselistingobject;
}]);
app.factory('sadadpaymentapi', ['$http','$q','leaselisting', function($http, $q,leaselisting) {
var leaselistingobject = {
getData: function () {
var URL = 'http://maps.googleapis.com/maps/api/geocode/json?address=';
return leaselisting.getValue().then(function(result){
URL = URL + result.address + '&sensor=true';
return $http({method: 'GET', url: URL})
}).then(function (response) {
return response.data;
});
}
};
return leaselistingobject;
}]);