Angularjs如何实现页面模板清除的方法

  介绍

这篇文章主要介绍了Angularjs如何实现页面模板清除的方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获、下面让小编带着大家一起了解一下。

js有什么特点

1, js属于一种解释性脚本语言;2,在绝大多数浏览器的支持下,js可以在多种平台下运行,拥有着跨平台特性;3,js属于一种弱类型脚本语言,对使用的数据类型未做出严格的要求,能够进行类型转换,简单又容易上手;4,js语言安全性高,只能通过浏览器实现信息浏览或动态交互,从而有效地防止数据的丢失;5,基于对象的脚本语言,js不仅可以创建对象,也能使用现有的对象。

<强>模板缓存清除:

模板缓存的清除包括传统的HTML标签设置清除缓存,以及Angularjs的一些配置清除,和Angularjs的路由切换清除

1,以下是传统的清除浏览器的方法

HTMLmeta标签设置清除缓存

& lt; !——,清除缓存,——比;   & lt; meta  http-equiv=癈ache-Control",内容=皀o - cache,,不是商店,,must-revalidate",/比;   & lt; meta  http-equiv=癙ragma",内容=皀o-cache",/比;   & lt; meta  http-equiv=癊xpires",内容=?“,/在

清理形式表单临时缓存

& lt; body  onLoad=癹avascript: document.formName.reset()“在

2, angularJs配置清除缓存

1,清除路由缓存,在路线路由配置中,注入美元httpProvider服务,通过美元httpProvider服务配置,清除路由缓存。

app.config ([“stateProvider"美元;,“urlRouterProvider"美元;,& # 39;locationProvider& # 39;美元,& # 39;httpProvider& # 39;美元,function  (stateProvider美元,美元urlRouterProvider, locationProvider美元,美元httpProvider), {   if 才能;(! $ httpProvider.defaults.headers.get), {   ,,,httpProvider.defaults.headers.get 美元;=,{};   ,,}   美元才能httpProvider.defaults.headers.common [“X-Requested-With"],=, & # 39; xmlhttprequest # 39;;   美元才能httpProvider.defaults.headers.get [& # 39; cache - control # 39;],=, & # 39; no - cache # 39;;   美元才能httpProvider.defaults.headers.get[& # 39;编译指示# 39;],=,& # 39;no - cache # 39;;   }));

2,用随机数,随机数也是一种很不错避免缓存的的方法,即在链接URL参数后加上随机数(一般加时间戳)。用随机时间,和随机数一样。

3,在状态路由配置中,将缓存配置项,配置为假的。

.state (“discountCoupon",, {   url:,才能“/discountCoupon",   templateUrl才能:“discountCoupon.html ?“, +, new 日期().getTime()//随机数   ,,控制器:& # 39;discountCoupon& # 39;   ,,缓存:假的,//缓存配置   })   .state (“customerPhone",, {   url:,才能“/customerPhone",   templateUrl才能:“customerPhone.html ?“, +, new 日期().getTime()//随机数   ,,控制器:& # 39;customerPhone& # 39;   ,,缓存:假的,//缓存配置   })

3, angularJs的路由切换清除缓存

angularJs默认模板加载都会被缓存起来,使用的缓存服务是tempalteCache美元,发送模板请求的服务是templateRequest美元,所以可以在路由切换时将上一个页面的模板清除:

1。每次发送美元http请求模板完成后,可以调用美元tempalteCache.remove (url),或tempalteCache美元。removeAll清除所有模板缓存。

rootScope。美元(& # 39;stateChangeStart& # 39;美元,,,,//路由开始切换   function 才能;(toState,事件,还以为,toParams, fromState,, fromParams), {   ,,,//路由开始切换,清除以前所有模板缓存   ,,,if  (fromState.templateUrl  !==,未定义),{   ,,,,,美元templateCache.remove (fromState.templateUrl);   ,,,,,//,templateCache.removeAll美元();   ,,,}   ,,});   rootScope。美元(& # 39;stateChangeSuccess& # 39;美元,,,,,//路由切换完成   function 才能;(toState,事件,还以为,toParams, fromState,, fromParams), {//路才能由切换成功,清除上一个页面模板缓存   if 才能;(fromState.templateUrl  !==,未定义),{   ,,,美元templateCache.remove (fromState.templateUrl);   ,,,//,templateCache.removeAll美元();   ,,}   });

2。使用<代码>美元provide.decorator> 美元templateRequest> Angularjs如何实现页面模板清除的方法