Bir kullanıcının yaptığı her istekte olduğu gibi companyid,employeeid
gibi bazı önemli şeyleri almaya çalışıyorum. Yani bu,'dan önce alınmalıdır. Bundan sonra, kullanıcı her isteğiyle (get/company/{companyid}
) belirlediği şirketidine dayanarak bilgi alır.Açısal Söz çalışmayan
Sahip olduğum sorun, şirket dışına alma yanıtının uzun ve açısal alması gereken yanıtın (get/company/{companyid}
) henüz yapılmasını sağlamasıdır.
Bu beyaz sözü düzeltmeye çalıştım ama işe yaramıyor.
(function() {
angular.module('employeeApp')
.service('authenticationservice', authenticationservice);
function authenticationservice($http,$location,authenticationFactory,$q,GLOBALS,$cookies) {
this.validateUser = function() {
var vm = this;
vm.deferred = $q.defer();
data = {"api_token": api_token};
return $http.post(GLOBALS.url+'show/employee/' + $cookies.get('employeeid'),data)
.success(function(response)
{
vm.deferred.resolve(response);
})
.error(function(err,response)
{
vm.deferred.reject(err);
});
return vm.deferred.promise;
}
}
})();
Rotalar benim yolları kullandığım file (In dosyasını
Hizmeti:
Burada kullanıcı hakkında bazı önemli bilgiler (Ben her isteği ile yaptığımız) almayı deneyin tüm önemli kullanıcı değişkenlerini ayarlamak için authenticationservice
.)
Sorun, kullanıcı bilgilerinin geç ve açısal olarak ayarlanmış olması, henüz ayarlanmayan companyId'yi kullandığı homeController öğesine gitmesidir.
Teşekkür
'$ http' zaten sadece geri dönebilirler bir söz verir. Niçin $ q'da sarmaya çalışıyorsun? – migg
'.success' kullanımdan kaldırıldı. Dokümanlara bakın https://docs.angularjs.org/api/ng/service/$http#deprecation-notice – user2950720
İade etmeden önce sözünü vermeniz gerekir: vm.deferred.resolve(); –