簡體   English   中英

如何檢索angularjs cachefactory.get值

[英]How to retrieve angularjs cachefactory.get values

我將數據存儲到$ cacheFactory這樣:

  $scope.loginCache = $cacheFactory.get('login') || $cacheFactory('login') ;
  $scope.loginCache.put("smsData",$scope.smsData) ;

然后通過以下方式檢索它:

  $scope.loginCache = $cacheFactory.get('login') || $cacheFactory('login') ;
  $scope.smsData = $scope.loginCache.get('smsData') ;

但是,我無法訪問$scope.smsData的各個元素。 將其放到console.log確實會顯示那里的所有值,但是由於某種原因我無法訪問數據-我在做什么錯?

console.log($scope.smsData) ;  // displays full object
console.log($scope.smsData.value) ;  // `undefined`
console.log($scope.smsData[0]) ;  // `undefined`
console.log($scope.smsData.value[0]) ; // `undefined`

console.log($ scope.smsData)輸出:

Promise {$$state: {…}}
   $$state:
      status:1
      value:Array(2)
         0:{table: "smsSent", data: {…}}
         1:{apiStatus: true}

最終,我試圖檢索:value [0] .data

這是因為$scope.smsData$scope.smsData對象,而不是JSON對象。 您可以做的是:

儲存時:

$scope.loginCache = $cacheFactory.get('login') || $cacheFactory('login') ;
// first resolve the promise and then store in cache
$scope.smsData.then(function(response){
     $scope.loginCache.put("smsData",response) ;
});

因此,當您從$cacheFactory檢索數據時,您將獲得所需的對象。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM