全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

AngularJS中的缓存使用

缓存篇

一个缓存就是一个组件,它可以透明地储存数据,以便以后可以更快地服务于请求。多次重复地获取资源可能会导致数据重复,消耗时间。因此缓存适用于变化性不大的一些数据,缓存能够服务的请求越多,整体系统性能就能提升越多。

$cacheFactory与缓存对象

$cacheFactory是一个为Angular服务生产缓存对象的服务。要创建一个缓存对象,可以使用$cacheFactory通过一个ID和capacity。其中,ID是一个缓存对象的名称,capacity则是描述缓存键值对的最大数量。举个生动的例子,$cacheFactory就是包租婆,她有一栋楼,里面有大大小小的房子可以出租,只要你给够钱,包租婆就会把房子租给你(获得缓存对象),这个房子包括了它的房号(ID)和房间的大小(capacity-容量)。

var myCache = $cacheFactory('myCache');

其中,缓存对象拥有以下几种方法

1. myCache.info() 返回缓存对象的ID,尺寸和选项

2. myCache.put() 新值键值对并放入缓存对象中 myCache.put("name", "Ben")

3. myCache.get() 返回对应的缓存值,若没有找到则返回undefined myCache.get("name")

4. myCache.remove() 把键值对从对应缓存对象中移除 myCache.remove("name")

5. myCache.remvoeAll() 清空该缓存对象

$http中的缓存

$http()方法允许我们传递一个cache参数。当数据不会经常改变的时候,默认的$http缓存会特别有用。其中,默认的$http缓存对象是 var cache = $cacheFactory('$http'); 可以这样设置它

$http({
   method: 'GET',
   url: 'api/user.json',
   cache: true
})

其中,缓存的键值为url, var userCache = cache.get('api/user.json')

自定义缓存

通过自定义的缓存来让$http发起请求也很简单,只需把cache值设为对应缓存对象名称即可

$http({
   method: 'GET',
   url: 'api/user.json',
   cache: myCache
})

或者通过config配置来设置每个$http请求的缓存对象,而不必像上面的例子中,往每一个$http请求中加入配置

app.config(function($httpProvider){
$httpProvider.defaults.cache = $cacheFactory('myCache',{capacity: 20})

其中,capacity会使用"近期缓存最久未使用算法",就是说,加如缓存容量为20,现在已经缓存了缓存20个,当第21个想要被缓存的时候,最久最小未被使用的缓存键值对会被清除,以便腾出空间容纳第21个缓存。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# angularjs  # 缓存  # 缓存数据  # 缓存问题  # 使用Angular缓存父页面数据的方法  # 详解Angular中$cacheFactory缓存的使用  # AngularJS在IE下取数据总是缓存问题的解决方法  # 详解AngularJS中$http缓存以及处理多个$http请求的方法  # AngularJS实现Model缓存的方式  # Angularjs在360兼容模式下取数据缓存问题的解决办法  # 键值  # 是一个  # 自定义  # 越多  # 象中  # 最久  # 有一  # 就能  # 则是  # 包租婆  # 只需  # 设为  # 适用于  # 也很  # 它可以  # 更快  # 可以使用  # 会把  # 没有找到  # 服务于 


相关文章: 如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南  制作充值网站的软件,做人力招聘为什么要自己交端口钱?  建站之星如何保障用户数据免受黑客入侵?  建站主机选择指南:服务器配置与SEO优化实战技巧  如何高效完成自助建站业务培训?  建站VPS推荐:2025年高性能服务器配置指南  建站之星后台管理:高效配置与模板优化提升用户体验  黑客如何通过漏洞一步步攻陷网站服务器?  专业制作网站的公司哪家好,建立一个公司网站的费用.有哪些部分,分别要多少钱?  早安海报制作网站推荐大全,企业早安海报怎么每天更换?  ,柠檬视频怎样兑换vip?  seo网站制作优化,网站SEO优化步骤有哪些?  我的世界制作壁纸网站下载,手机怎么换我的世界壁纸?  建站之星五站合一营销型网站搭建攻略,流量入口全覆盖优化指南  如何通过商城免费建站系统源码自定义网站主题?  导航网站建站方案与优化指南:一站式高效搭建技巧解析  如何用AWS免费套餐快速搭建高效网站?  如何用美橙互联一键搭建多站合一网站?  建站上传速度慢?如何优化加速网站加载效率?  如何用虚拟主机快速搭建网站?详细步骤解析  高端建站如何打造兼具美学与转化的品牌官网?  南平网站制作公司,2025年南平市事业单位报名时间?  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  建站之星如何快速解决建站难题?  网站制作网站,深圳做网站哪家比较好?  建站之星后台密码遗忘如何找回?  详解jQuery停止动画——stop()方法的使用  北京营销型网站制作公司,可以用python做一个营销推广网站吗?  如何有效防御Web建站篡改攻击?  如何用花生壳三步快速搭建专属网站?  如何通过商城自助建站源码实现零基础高效建站?  相亲简历制作网站推荐大全,新相亲大会主持人小萍萍资料?  表情包在线制作网站免费,表情包怎么弄?  香港服务器建站指南:外贸独立站搭建与跨境电商配置流程  利用JavaScript实现拖拽改变元素大小  ppt在线制作免费网站推荐,有什么下载免费的ppt模板网站?  天津个人网站制作公司,天津网约车驾驶员从业资格证官网?  阿里云网站制作公司,阿里云快速搭建网站好用吗?  如何在Golang中使用encoding/gob序列化对象_存储和传输数据  西安大型网站制作公司,西安招聘网站最好的是哪个?  免费公司网站制作软件,如何申请免费主页空间做自己的网站?  SQL查询语句优化的实用方法总结  交易网站制作流程,我想开通一个网站,注册一个交易网址,需要那些手续?  高性能网站服务器配置指南:安全稳定与高效建站核心方案  html制作网站的步骤有哪些,iapp如何添加网页?  网站制作壁纸教程视频,电脑壁纸网站?  如何通过万网虚拟主机快速搭建网站?  如何正确选择百度移动适配建站域名?  如何在万网ECS上快速搭建专属网站?  香港服务器WordPress建站指南:SEO优化与高效部署策略 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。