AngularJs如何过滤$ cacheFactory

用户名

我有一个$ cacheFactory

 /* @ngInject */
MenuSvcCache.$inject = ['$cacheFactory'];

app.factory('MenuSvcCache', MenuSvcCache);
function MenuSvcCache($cacheFactory){
    return $cacheFactory('MenuSvc')
};

它在我的LayoutCtrl中使用:

    function Init(router) {
    if (MenuSvcCache) {
        layout.menuItems = MenuSvcCache.get('MenuSvc');            
    } else {
        MenuSvc.all().success(function (data) {
            MenuSvcCache.put('MenuSvc', data)
            layout.menuItems = MenuSvcCache.get('MenuSvc');
        })
            .error(function (error) {
                console.log('Error: ' + error.message)
            });
    }
}

我可以随意过滤该缓存吗?就像是 ...

        if(MenuSvcCache && router){   
        layout.menuItems = MenuSvcCache.get('MenuSvc').$filter(router);   
        } else {
        layout.menuItems = MenuSvcCache.get('MenuSvc'); 
        }     

我意识到“。$ filter(router)”语法不正确,但是我可以使用任何语法吗?

彼得·阿什韦尔

您需要手动跟踪按键-请参阅此plunkr

http://plnkr.co/edit/vQfo0KAHPxs6K9t437i1?p=preview

(function(angular) {
  'use strict';
angular.module('cacheExampleApp', []).
  controller('CacheController', ['$filter', '$scope', '$cacheFactory',
  function($filter, $scope, $cacheFactory) {
    $scope.keys = [];
    $scope.cache = $cacheFactory('cacheId');
    $scope.put = function(key, value) {
      if ($scope.cache.get(key) === undefined) {
        $scope.keys.push(key);
      }
      $scope.cache.put(key, value === undefined ? null : value);
    };

    $scope.put('apples', {data: 1});
    $scope.put('pears', {data: 2});
    $scope.put('oranges', {data: 3});
    $scope.put('pineapples', {data: 1});
    $scope.put('cherries', {data: 1});

  }]);
})(window.angular);

angular.module('cacheExampleApp').filter('onesOnly', function() {
  return function(cacheEntry) {
      return cacheEntry.data === 1;
  }
})

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

本地存储与AngularJS $ cacheFactory

来自分类Dev

AngularJS put an array in $cacheFactory

来自分类Dev

查询AngularJS的$ cacheFactory值

来自分类Dev

角$ cacheFactory如何工作?

来自分类Dev

AngularJS cacheFactory:ID已经被使用

来自分类Dev

Angularjs cacheFactory : id is already taken

来自分类Dev

如何测试有角$ cacheFactory?

来自分类Dev

如何从$ cacheFactory收集所有对象

来自分类Dev

AngularJS在$ cacheFactory中放置了一个数组

来自分类Dev

什么是$ cacheFactory?

来自分类Dev

cacheFactory在哪里存储数据?我们如何看到缓存的数据?

来自分类Dev

Async $cacheFactory with $http and $resource

来自分类Dev

$ cacheFactory + API调用:更新缓存

来自分类Dev

在服务中使用cacheFactory进行CRUD

来自分类Dev

在Angular $ cacheFactory中缓存多个数据?

来自分类Dev

用$ http和$ resource异步$ cacheFactory

来自分类Dev

在Angular $ cacheFactory中缓存多个数据?

来自分类Dev

$ resource未利用缓存参数/ $ cacheFactory

来自分类Dev

角度CacheFactory没有设置任何值

来自分类Dev

AngularJs如何过滤负数

来自分类Dev

如何使用angularjs过滤列表

来自分类Dev

如何改善AngularJS中的过滤?

来自分类Dev

为什么我应该使用$ cacheFactory而不是手动获取/设置数据?

来自分类Dev

使用AngularJS过滤器过滤数据。如何遍历对象?

来自分类Dev

如何使用angularjs从词典字典中过滤

来自分类Dev

如何在AngularJS中过滤对象集合

来自分类Dev

如何使用AngularJs过滤JSON数据

来自分类Dev

如何在AngularJS中过滤输入值

来自分类Dev

如何从angularJS的数组中过滤特定项目?