2016-04-20 24 views
8

我正在尝试将AngularJS的Cookie存储为数组以保持Cookie文件清洁。如何使用Angular cookie存储(并检索)Cookie数组

我用下面的方法:

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

现在,当我尝试使用检索它:

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

我得到一个undefined值。

但是当我尝试使用这个检索它:

console.log($rootScope.getmycookiesback); 

它检索[object Object]

我在做什么错?我想要从密钥1密钥2中获得值。

+0

如果尝试getmycookiesback = $ cookies.getObject(” myCookieArray');? – strelok2010

回答

5

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

+0

在对我的应用程序进行测试后,此解决方案最终解决了我的问题。 – Artvader

3

尝试这样的:

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

这里plunker:http://plnkr.co/edit/k9fltjGUbTbfbVlAmRcJ

我希望它能帮助

+0

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