AngularJs 禁止模板缓存的方法


Posted in Javascript onNovember 28, 2017

本文介绍了AngularJs 禁止模板缓存的方法,分享给大家,也给自己留个笔记,具有如下:

因为AngularJs的特性(or 浏览器本身的缓存?),angular默认的HTML模板加载都会被缓存起来。导致每次修改完模板之后都得经常需要清除浏览器的缓存来保证浏览器去获得最新的html模板,自己测试还好,但如果更新了服务器的模板内容,用户可不会每个都配合你去清除浏览器的缓存。故这还真是个大问题。

app.config(function($routeProvider, $locationProvider) { 
 $routeProvider 
  .when('/Book/:bookId/ch/', { 
  templateUrl: 'chapter.html', 
  controller: 'ChapterController' 
 }); 
});

方法一:在模板文件路径后加时间戳(or 其他随机数),强制AngularJs每次从服务器加载新的模板

app.config(function($routeProvider, $locationProvider) { 
 $routeProvider 
  .when('/Book/:bookId/ch/', { 
  templateUrl: 'chapter.html' + '?datestamp=' + (new Date()).getTime(), 
  controller: 'ChapterController' 
 }); 
});

不过这种方法太不美观了。。。。

方法二:使用$templateCache清除缓存

// 禁止模板缓存 
app.run(function($rootScope, $templateCache) { 
  $rootScope.$on('$routeChangeStart', function(event, next, current) { 
    if (typeof(current) !== 'undefined'){ 
      $templateCache.remove(current.templateUrl); 
    } 
  }); 
});

在配置 路由地址后,即在app.config之后添加这段代码,可禁止AngularJs将templateUrl缓存起来。

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

Javascript 相关文章推荐
禁止拷贝网页内容的js代码
Jan 22 Javascript
jQuery统计上传文件大小的方法
Jan 24 Javascript
jQuery控制元素显示、隐藏、切换、滑动的方法总结
Apr 16 Javascript
JS实现动态移动层及拖动浮层关闭的方法
Apr 30 Javascript
javascript实现全角转半角的方法
Jan 23 Javascript
浅析使用BootStrap TreeView插件实现灵活配置快递模板
Nov 28 Javascript
深入理解 webpack 文件打包机制(小结)
Jan 08 Javascript
解决vue多个路由共用一个页面的问题
Mar 12 Javascript
express+vue+mongodb+session 实现注册登录功能
Dec 06 Javascript
详解vue 路由跳转四种方式 (带参数)
Apr 28 Javascript
实例分析javascript中的异步
Jun 02 Javascript
Vue基于iview table展示图片实现点击放大
Aug 05 Javascript
微信小程序自定义toast实现方法详解【附demo源码下载】
Nov 28 #Javascript
vue2.0与bootstrap3实现列表分页效果
Nov 28 #Javascript
Vue.JS项目中5个经典Vuex插件
Nov 28 #Javascript
Vue实现web分页组件详解
Nov 28 #Javascript
基于vue2实现左滑删除功能
Nov 28 #Javascript
JavaScript生成简单等差数列
Nov 28 #Javascript
微信小程序用户自定义模版用法实例分析
Nov 28 #Javascript
You might like
使用 eAccelerator加速PHP代码的方法
2007/09/30 PHP
Apache2中实现多网站域名绑定的实现方法
2011/06/01 PHP
解析PHP多种序列化与反序列化的方法
2013/06/06 PHP
php+html5使用FormData对象提交表单及上传图片的方法
2015/02/11 PHP
PHP中register_shutdown_function函数的基础介绍与用法详解
2017/11/28 PHP
用js实现的自定义的对话框的实现代码
2010/03/21 Javascript
基于mootools 1.3框架下的图片滑动效果代码
2011/04/22 Javascript
jQuery在IE下使用未闭合的xml代码创建元素时的Bug介绍
2012/01/10 Javascript
使用UglifyJS合并/压缩JavaScript的方法
2012/03/07 Javascript
js时间比较示例分享(日期比较)
2014/03/05 Javascript
JavaScript中的无阻塞加载性能优化方案
2014/10/10 Javascript
javascript获取flash版本号的方法
2014/11/20 Javascript
微信小程序 PHP后端form表单提交实例详解
2017/01/12 Javascript
jquery实现数字输入框
2017/02/22 Javascript
Vue学习之常用指令实例详解
2020/01/06 Javascript
js实现随机抽奖
2020/03/19 Javascript
vue使用keep-alive实现组件切换时保存原组件数据方法
2020/10/30 Javascript
微信小程序input抖动问题的修复方法
2021/03/03 Javascript
[04:19]完美世界携手游戏风云打造 卡尔工作室模型介绍篇
2013/04/24 DOTA
Python中使用partial改变方法默认参数实例
2015/04/28 Python
Python 如何访问外围作用域中的变量
2016/09/11 Python
python+matplotlib绘制饼图散点图实例代码
2018/01/20 Python
Python遍历numpy数组的实例
2018/04/04 Python
pandas全表查询定位某个值所在行列的方法
2018/04/12 Python
python pyheatmap包绘制热力图
2018/11/09 Python
Python去除字符串前后空格的几种方法
2019/03/04 Python
python程序快速缩进多行代码方法总结
2019/06/23 Python
pytorch 预训练层的使用方法
2019/08/20 Python
python创建文本文件的简单方法
2020/08/30 Python
鱼油专家:Omegavia
2016/10/10 全球购物
高级方案规划工程师岗位职责
2013/11/29 职场文书
2014领导班子四风问题对照检查材料思想汇报
2014/09/21 职场文书
2014年班级工作总结范文
2014/12/23 职场文书
小学生读书笔记
2015/07/01 职场文书
2016年教师政治思想表现评语
2015/12/02 职场文书
WIN10使用IIS部署ftp服务器详细教程
2022/08/05 Servers