2016-04-20 18 views
8

Sto tentando di memorizzare i miei cookie con AngularJS come una matrice per mantenere pulito il file dei cookie.Come memorizzare (e recuperare) un array di cookie con i cookie angolari

sto usando il seguente metodo:

$cookies.put('myCookieArray',{'key1':'value1','key2':'value2'}); 

Ora, quando provo a recuperarlo utilizzando:

getmycookiesback = $cookies.get('myCookieArray'); 
console.log(getmycookiesback.key1); 

ottengo un valore undefined.

ma quando provo a recuperarlo utilizzando questo:

console.log($rootScope.getmycookiesback); 

recupera [object Object].

Cosa sto sbagliando? Voglio ottenere il valore da chiave1 e chiave2.

+0

E se provare getmycookiesback = $ cookies.getObject (' myCookieArray ') ;? – strelok2010

risposta

5

Usa $cookies.putObject('myCookieArray',{'key1':'value1','key2':'value2'}); e getmycookiesback = $cookies.getObject('myCookieArray');

+0

Dopo il test sulla mia app, questa soluzione ha risolto il mio problema. – Artvader

3

provare così:

DemoApp.controller('DemoController', function ($cookies, $scope, $log) { 

      //$cookies.put('myCookieArray',{'key1':'value1','key2':'value2'}); 
      $cookies['myCookieArray']= {'key1':'value1','key2':'value2'}; 

      getmycookiesback = $cookies['myCookieArray']; 
      $log.info(getmycookiesback.key1); 
     }) 

qui il plunker: http://plnkr.co/edit/k9fltjGUbTbfbVlAmRcJ

Spero che aiuta

+0

http://plnkr.co/edit/k9fltjGUbTbfbVlAmRcJ?p=preview – thegio