小程序商城运营优化_AngularJs 禁止模板缓存的方法

摘要: AngularJs 严禁模版缓存文件的方式 文中详细介绍了AngularJs 严禁模版缓存文件的方式,共享给大伙儿,也为自己留个手记,具备以下:由于AngularJs的特点(or 访问器自身的缓存文件?...

AngularJs 禁止模板缓存的方法       本篇文章主要介绍了AngularJs 禁止模板缓存的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

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

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

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

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

app.config(function($routeProvider, $locationProvider) { 
 $routeProvider 
 .when('/Book/:bookId/ch/', { 
 ' + ' 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缓存起来。

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




联系我们

全国服务热线:4000-399-000 公司邮箱:343111187@qq.com

  工作日 9:00-18:00

关注我们

官网公众号

官网公众号

Copyright?2020 广州凡科互联网科技股份有限公司 版权所有 粤ICP备10235580号 客服热线 18720358503

技术支持:如何抠图