我使用了$cookies中的ngCookies来存储对象数组,但是当我刷新浏览器时,数据长度会增加,并且不再可以作为数组访问。

我在线搜索,发现cookieStore仍在我使用的ngCookies范围内,并且效果很好,所以我想知道cookies可能出什么问题了。以下是我尝试过的代码。

//Used this to in the run method to check if cookie exist
$rootScope.cart =  $cookies.get('cart') || [];

//On button click I run the code below which fails after browser refresh
$rootScope.cart.push(response.data);
$cookies.put('cart', $rootScope.cart);


PS:我是angularjs的新手

最佳答案

解决该问题的另一种方法是使用插件angular-local-storage

它既可以处理更现代的LocalStorage / SessionStorage,又可以保留cookie作为后备-https://github.com/grevory/angular-local-storage

它具有一个方便且可配置的API:

//set value
localStorageService.set(key, val);
//read value
localStorageService.get(key);
//list all
localStorageService.keys();

关于javascript - AngularJS:Cookie在浏览器刷新时失败,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35524851/

10-13 00:36