2016-04-20 20 views
8

Ich versuche, meine Cookies mit AngularJS als Array zu speichern, um die Cookie-Datei sauber zu halten.So speichern (und abrufen) Sie ein Cookie-Array mit Angular Cookies

Ich verwende die folgende Methode:

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

Jetzt, wenn ich versuche, es zurückzuholen mit:

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

Ich erhalte einen undefined Wert.

aber wenn ich versuche, es abzurufen dies mit:

console.log($rootScope.getmycookiesback); 

Es [object Object] abruft.

Was mache ich falsch? Ich möchte den Wert von key1 und key2 erhalten.

+0

Was passiert, wenn versuchen getmycookiesback = $ cookies.getObject hilft (‘ myCookieArray ') ;? – strelok2010

Antwort

5

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

+0

Nach dem Testen auf meiner App, löste diese Lösung schließlich mein Problem. – Artvader

3

versuchen wie folgt aus:

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); 
     }) 

hier die Plunker: http://plnkr.co/edit/k9fltjGUbTbfbVlAmRcJ

Ich hoffe, es

+0

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