How can i return data using promise
Got error that successdata is not a function in my controller, i don't know what am i doing wrong. Do i miss something in my controller ?
I observ by debug app response is coming in service but nothing is returning from it
var module = angular.module('app', []);
module.service("webservice", function($http,$q) {
return {
callservice:function(method,url,_data){
var deferred = $q.defer();
var promise = deferred.promise;
$http({
method: method,
url: App_Service_api+url,
data: _data,
headers: {'Content-Type': 'application/x-www-form-urlencoded'}
}).
success(function (data, status, headers, config) {
if (data.success) {
deferred.resolve(data.message);
//return deferred.promise;
promise.successdata = function(fn) {
promise.then(fn);
return deferred.promise;
}
}
else {
deferred.reject("Plase Enter valid data.");
//return deferred.promise;
promise.errordata = function(fn) {
alert("error");
promise.then(null, fn);
return deferred.promise;
}
}
}).
error(function(data, status, headers, config){
deferred.reject("Plase Enter valid data.");
//return deferred.promise;
promise.errordata = function(fn) {
promise.then(null, fn);
return deferred.promise;
}
});
}
}
})
Here is my controller code
webservice.callservice('POST',App_Service_login,inputs).successdata(function(data){
var alertPopup = $ionicPopup.alert({
title: 'Login Succesfull!',
template: 'Please check your credentials!'
});
})
.errordata(function(data) {
var alertPopup = $ionicPopup.alert({
title: 'Login failed!',
template: 'Please check your credentials!'
});
});