thyemleaf:禁用JS缓存(原创)
在开发时经常需要调整JS,但是调整后由于页面缓存的原因,看不到实时效果。
开发环境:springboot+thymeleaf
1.配置文件多模式
2.获得当前的激活的模式和随机数
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.boot.context.properties.ConfigurationProperties;
- import org.springframework.context.annotation.PropertySource;
- import org.springframework.core.env.Environment;
- import org.springframework.stereotype.Component;
- /**
- *
- * 类描述: 项目主配置文件
- *
- */
- @Component(value = "app")
- @ConfigurationProperties(prefix = "app")
- @PropertySource("classpath:/config/app.properties")
- public class PropertiesApp {
- @Autowired
- private Environment env;
- private String staticURL;
- private String publicURL;
- private String appURL;
- public final String getStaticURL() {
- return staticURL;
- }
- public final void setStaticURL(String staticURL) {
- this.staticURL = staticURL;
- }
- public final String getPublicURL() {
- return publicURL;
- }
- public final void setPublicURL(String publicURL) {
- this.publicURL = publicURL;
- }
- public final String getAppURL() {
- return appURL;
- }
- public final void setAppURL(String appURL) {
- this.appURL = appURL;
- }
- /**
- * 获得:随机数,用作禁用页面缓存
- *
- * @return the Rint
- */
- public final long getRnd() {
- return System.currentTimeMillis();
- }
- /**
- * 获得激活的配置文件属性
- *
- * @return
- */
- public String getActive() {
- return env.getProperty("spring.profiles.active");
- }
- }
3.在页面中判断模式和随机数
- <div th:fragment="js-index">
- <th:block th:switch="${@app.getActive()}">
- <script th:case="'prod'" type="text/javascript" th:src="(${@app.getAppURL()})+'js/index.js'"></script>
- <script th:case="'dev'" type="text/javascript" th:src="(${@app.getAppURL()})+'js/index.js?rnd='+(${@app.getRnd()})"></script>
- </th:block>
- </div>
${@app.getActive()} 获得当前的激活模式
${@app.getRnd()} 获得随机数
生成的HTML:
这样每次加载的JS都是最新的,记住对业务JS实施,不要对公共的JS去做。
thyemleaf:禁用JS缓存(原创)的更多相关文章
- 设置Firefox禁用js缓存
让firefox禁用缓存 让Firefox不再使用缓存网站开发时经常会有这样的疑问:为什么修改了代码,刷新了页面还是没有看到改动呢? 其实,可能只是你的Firefox并没有去下载你更新了的文件. 这时 ...
- chrome调试如何禁用浏览器缓存
0.写在前面的话 遇到过很多很多次,修改了页面代码,但是程序始终没有按照设想的方向走,有时候折腾了几个小时,发现问题最后却是莫名其妙恢复的.后来进一步调试发现,自己已经修改了如js代码,但是前端在载入 ...
- js缓存
jsp页面加载的js有时候会有缓存 可以给引入的js加一个版本号,-------版本号不一致,会重新加载 <script type="text/javascript" src ...
- Gulp解决发布线上文件(CSS和JS)缓存问题
Gulp解决发布线上文件(CSS和JS)缓存问题 本文的缘由:目前经常线上发布文件后要不断的刷新页面及过很长时间,页面上的CSS和JS文件才能生效,特别对于目前做微信商城的时候,微信内置的浏览器缓存非 ...
- eclipse加速之禁用JS、jsp等文件的语法验证,eclipsejs
eclipse加速之禁用JS.jsp等文件的语法验证 去除eclipse的JS验证:将windows->preference->Java Script->Validator-> ...
- ecshop缓存清理-限制或禁用ECShop缓存
ecshop缓存清理-限制或禁用ECShop缓存 ECSHOP的缓存存放在templates/caches/文章夹下,时间长了这个文件夹就会非常庞大,拖慢网站速度.还有很多情况我们不需要他的缓存. ...
- 关闭并且禁用ECSHOP缓存
ECSHOP的缓存机制从一定程度上可以减少ECSHOP反复读取数据库的几率,从而一定程度上降低服务器负担,提高访问速度.但是启用缓存机制,对一些新手站长也有不利的地方.我就遇到很多新手站长经常问,我明 ...
- chromedriver禁用图片,禁用js,切换UA
selenium 模拟chrome浏览器,此时就是一个真实的浏览器,一个浏览器该加载的该渲染的它都加载都渲染,所以爬取网页的速度很慢.如果可以不加载图片等操作,网页加载速度就会快不少,代码中列出了了禁 ...
- JS 缓存
JSON.stringify() 方法用于将 JavaScript 值转换为 JSON 字符串. 例: JSON.parse(jsonstr); //可以将json字符串转换成json对象 JSON. ...
随机推荐
- 我的长大app开发教程第三弹:实现四个子页面绑定RadioButton
在开始之前先上一张图 在上一节中我们实现了底部Button,这一弹我们要实现点击四个按钮分别切换到不同页面,我们可以把页面分为两部分,顶部栏和中间内容部分,我们可以通过线性布局包裹两部分内容,顶部栏又 ...
- ubuntu普通用户使用wireshark的权限问题
解决办法如下: 一.添加wireshark用户组 sudo groupadd wireshark 二.将dumpcap更改为wireshark用户组 sudo chgrp wireshark /usr ...
- tensorflow---alexnet training (tflearn)
# 输入数据 import input_data mnist = input_data.read_data_sets("/tmp/data/", one_hot=True) imp ...
- pyaudio
安装: 下载whl文件:https://github.com/intxcc/pyaudio_portaudio/releases 切换到whl文件目录,直接用pip安装 pip instal ...
- Django之CRM项目Day3-客户展示及分页
1.展示客户 模板的查找顺序: 先找全局的templates--> 按照app的注册顺序找templates中的文件 使用admin添加数据: 创建超级用户 python manage.py ...
- 第26月第7天 mac如何matplotlib中文乱码问题
1.mac如何matplotlib中文乱码问题 先查看 ~/.matplotlib/fontList.json 添加SimHei字体(simhei.ttf文件)到 /Library/Framework ...
- webpack配置模块的查找范围
一般我们的入口文件会引入一下公共的样式文件,比如这样 import './style' 但是这个样式文件并不会生效呀,因为你的写法不对鸭,你要把文件的后缀名也要写 import './style.cs ...
- linux 根据Pid获取 进程内容
ps -ef | grep 753 | grep -v 'grep' | awk '{print $NF}'
- Struts2基础2
一.struts中的API 1)完全解耦合的方式 1.1首先创建一个示例工程,在WEB-INF下创建lib文件夹,把struts2核心jar包导入.在工程下创建resource文件夹,并将其设为资源文 ...
- Java-Servlet--《12-WEB应用中的普通Java程序如何读取资源文件.mp4》 有疑问
\第五天-servlet开发和ServletConfig与ServletContext对象\12-WEB应用中的普通Java程序如何读取资源文件.mp4; 多层时,DAO为了得到资源文件中的配置参数: ...