AngularJs无法检查cacheId已经存在

时间:2016-09-16 13:27:00

标签: angularjs

我有一个要求,我需要将用户的本地设置存储到某个缓存对象中。我尝试使用$cacheFactory例如

来实现这一点

var userCache = $cacheFactory('users');

但是,当我的代码再次点击此行时,它会出现以下错误:

  

错误:cacheId'用户'已被占用!

我不确定,如何检查此ID是否已存在,因为我需要在每次加载组件时从此缓存对象中获取设置。

1 个答案:

答案 0 :(得分:2)

它实际上列出了如何在the documentation page:

上执行此操作

$cacheFactory()功能不是"获取或创建"打电话,它只是一个创造。

这是检查缓存是否已创建的方法:

if (!$cacheFactory.get('users')) {
  var userCache = $cacheFactory('users');
}

可以更改为

var userCache = $cacheFactory.get('users') || $cacheFactory('users');