时间:2021-05-28
本文介绍了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缓存起来。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
为了说明angularJS如何增强了标准HTML,我们先将创建一个静态HTML页面模板,然后把这个静态HTML页面模板转换成能动态显示的AngularJS模板。
为了说明angularJS如何增强了标准HTML,我们先将创建一个静态HTML页面模板,然后把这个静态HTML页面模板转换成能动态显示的AngularJS模板。
你同样可以使用cache标签来缓存模板片段。在模板的顶端附近加入{%loadcache%}以通知模板存取缓存标签。模板标签{%cache%}在给定的时间内缓存了
大家有时会将视频进行缓存,以便没有网络的时候观看,为了防止缓存不顺利,下面来看看腾讯视频缓存视频时禁止自动锁屏方法吧。 1)打开腾讯视频APP,首先进入首页
本文实例讲述了AngularJS实现根据变量改变动态加载模板的方法。分享给大家供大家参考,具体如下:directive:return{restrict:'E',