2014-11-11 10 views
11

Yerel Depolama işlemlerini yürütmek için ngStorage adlı bir modül kullanıyorum (https://github.com/gsklee/ngStorage). Yerel depolamada bir nesne ayarladığımı söyleyelim $ localStorage.something = true; Yerel depolamada hala kullanılabilir olup olmadığını öğrenmek için bu nesneyi nasıl izlerim? I'v çalıştı: Angularjs kullanarak yerel depolama alanı izleme

$scope.$watch($localStorage.something,function(newVal,oldVal){ 
    if(oldVal!==newVal && newVal === undefined){ 
    console.log('It is undefined'); 
    } 
}); 

Temelde el Chrome'un console.Is bu bile mümkün üzerinden bir kullanıcı yerel depolama nesneyi kaldırdığında izlemek için çalışıyorum ??

cevap

20

deneyebileceğiniz:

$scope.$watch(function() { return $localStorage.something; },function(newVal,oldVal){ 
    if(oldVal!==newVal && newVal === undefined){ 
    console.log('It is undefined'); 
    } 
}) 
+0

: Ey sayesinde Dürüstçe tür değişiklikleri izleyecek mümkün olmadığını düşündüm ama beni yanlış oldu. İzlenmem için gerçekten neye ihtiyacım olduğunu döndüren bir işlevi izlemek bile bana çarpmadı. Teşekkürler ^^ –

+0

Çalışmıyor ... localStorage varlığını değiştirmek için bir zaman aşımı kullanarak yukarıdaki kodun tam kopyasıyla ngStorage kullanıyorum; izleyici çalışmıyor. – dmr07

+0

@ danm07 Çözüm mantıksal olarak çalışır, Belki sorun ngStorage nedeniyle farklı bir şeydir. –