2016-04-02 11 views
0
Bir okul projesi için biraz web uygulaması üzerinde çalışıyorum

yüklenmemesi localStorage, böyle localStorage kullanıcı veri depolamak:angularjs - düzgün

UserService.login($scope.user).then(function (response){ 
    if(response.data.Error){ 
     $scope.credentialsError = true; 
    }else{ 
     $rootScope.cliente = response.data.result; 
     localStorageService.set('cliente', $rootScope.cliente); 
     $location.path('/dashboard'); 
    } 
}); 

sürece ben sayfa, her şey eserlerinde kaldıkça iyi, kullanıcı hala $ rootScope bir şey yapıyor. Yeniden yüklendiğimde sorun geliyor. Başlatma sırasında ben bu çalıştırın:

doğru yerel depolama kullanıcı verilerini almak için görünür
angular.module('app-gp').run([ 
    "$rootScope", "localStorageService", "$state", function($state,localStorageService, $rootScope) { 
     $rootScope.cliente = localStorageService.get('cliente'); 
}]); 

. Ancak bir kontrolörden veya şablondan $ rootScope.cliente talep ettiğimde tanımsız olurum.

Yardımlarınız için teşekkürler.

cevap

0

Bir süre sonra sorunu çözmeyi başardım. O localStorageservice ilgili olmadı görünüyor, ne ben yaptım bu yeniden düzenlemek oldu:

angular.module('app-gp').run(["$rootScope", "localStorageService", "$state", function($rootScope, localStorageService, $state) { 

ve ... çalıştı

0

Lütfen localStorageService'in düzgün çalıştığından emin olun. LocalStorageService uygulamasından emin değilim, ancak localStorage öğesinin yalnızca dize değerlerini desteklediğini ve response.data.result dizesine dönüştürmeniz gerektiğini unutmayın. Chrome'da, geliştirici araçlarını> Kaynaklar sekmesini kullanabilir ve "Yerel Depolama Alanı" na bakabilir ve depolama biriminin gerçekten gerçekleşip gerçekleşmediğini görebilirsiniz.

İdeal

+0

O, Şu anda kullanıyorum çalışmaktadır [bu yerel depolama hizmeti] (https : //github.com/grevory/angular-local-storage) ve sayfayı çalıştırdığımda, 'log rootScope.cliente = localStorageService.get (' cliente '); console.log ($ rootScope.cliente); 've ihtiyacım olan nesne. Ancak, nesneyi şablonumdan aradığımda tanımsız olurum – AldoJV

0

Kodunuz Ancak yerel depolama hizmetinin uygulanması problemlidir olabilir gayet iyi görünüyor .. bir yorum olarak bu yayınlanmıştır olurdu, ama henüz bunu bu sitede yeterli itibar yoktur. Bu iş için bilinen ngStorage hizmetini kullanmalısınız. https://github.com/gsklee/ngStorage