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 相关文章推荐
JavaScript 乱码问题
Aug 06 Javascript
jquery tools 系列 scrollable(2)
Sep 06 Javascript
jquery插件制作 图片走廊 gallery
Aug 17 Javascript
用jquery方法操作radio使其默认选项是否
Sep 10 Javascript
从数据库读取数据后将其输出成html标签的三种方法
Oct 13 Javascript
js实现Select列表各项上移和下移的方法
Aug 14 Javascript
基于javascript实现图片滑动效果
May 07 Javascript
JS经典正则表达式笔试题汇总
Dec 15 Javascript
node.js入门学习之url模块
Feb 25 Javascript
JS实现把一个页面层数据传递到另一个页面的两种方式
Aug 13 Javascript
vue通过style或者class改变样式的实例代码
Oct 30 Javascript
Vue中对iframe实现keep alive无刷新的方法
Jul 23 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
仿AS3实现PHP 事件机制实现代码
2011/01/27 PHP
PHP的password_hash()使用实例
2014/03/17 PHP
关于php微信订阅号开发之token验证后自动发送消息给订阅号但是没有消息返回的问题
2015/12/21 PHP
PHP中的Trait 特性及作用
2016/04/03 PHP
php版阿里大于(阿里大鱼)短信发送实例详解
2016/11/30 PHP
Laravel 框架返回状态拦截代码
2019/10/18 PHP
javascript onmouseout 解决办法
2010/07/17 Javascript
使用纯javascript实现经典扫雷游戏
2015/04/23 Javascript
javascript用函数实现对象的方法
2015/05/14 Javascript
javascript设置和获取cookie的方法实例详解
2016/01/05 Javascript
实例讲解JavaScript中call、apply、bind方法的异同
2016/09/13 Javascript
JS中BOM相关知识点总结(必看篇)
2016/11/22 Javascript
JavaScript模块详解
2017/12/18 Javascript
js实现鼠标拖拽缩放div实例代码
2019/03/25 Javascript
[02:33]2018DOTA2亚洲邀请赛赛前采访——LGD
2018/04/04 DOTA
python多线程编程方式分析示例详解
2013/12/06 Python
Python正则获取、过滤或者替换HTML标签的方法
2016/01/28 Python
python输入错误密码用户锁定实现方法
2017/11/27 Python
浅谈Python接口对json串的处理方法
2018/12/19 Python
零基础使用Python读写处理Excel表格的方法
2019/05/02 Python
python3 深浅copy对比详解
2019/08/12 Python
python-序列解包(对可迭代元素的快速取值方法)
2019/08/24 Python
python BlockingScheduler定时任务及其他方式的实现
2019/09/19 Python
Python Selenium模块安装使用教程详解
2020/07/09 Python
python 下载文件的多种方法汇总
2020/11/17 Python
详解Django中的FBV和CBV对比分析
2021/03/01 Python
HTML5自定义data-* data(obj)属性和jquery的data()方法的使用
2012/12/13 HTML / CSS
Html5+CSS3+EL表达式问题小结
2020/12/19 HTML / CSS
Farnell德国:电子元器件供应商
2018/07/10 全球购物
Rodd & Gunn澳大利亚官网:新西兰男装品牌
2018/09/25 全球购物
意大利独特而优质的家居用品:Fazzini
2018/12/05 全球购物
优秀党支部事迹材料
2014/01/14 职场文书
函授毕业生自我鉴定范文
2014/03/25 职场文书
带香烟到学校抽的检讨书
2014/09/25 职场文书
教你使用Pandas直接核算Excel中快递费用
2021/05/12 Python
win11怎么用快捷键锁屏? windows11锁屏的几种方法
2021/11/21 数码科技