thyemleaf:禁用JS缓存
Posted 小溪(潺潺流水,润泽千里)
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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缓存的主要内容,如果未能解决你的问题,请参考以下文章
nuxt.js + Apollo Client:如何禁用缓存?
禁用 on('value') 缓存 firebase 实时数据库 JS SDK [关闭]
浏览器运行的时候 事件打印不出来,提示 此页面出现代码禁用了反向和正向缓存(由于默认事件导致的)
SpringBoot+Thyemleaf报错Template might not exist or might not be accessible