Thymeleaf 公共css,js提取及自有css,js導(dǎo)入

之前參考網(wǎng)上的各種方法,均為達(dá)到期望的效果合冀,于是到Thymeleaf 官網(wǎng)逛了下蚤氏,找到官網(wǎng)的例子來(lái)實(shí)現(xiàn)了:

以fragment方式分離公有css和js,
以replace+參數(shù)的方式傳入每個(gè)頁(yè)面單獨(dú)的css和js.

直接上栗子:
公有css(存放在templates/common/htmlHead.html中):

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head th:fragment="common_header(title,links)">
    <!-- Common styles and scripts -->
    <title th:replace="${title}">The awesome application</title>
    <meta charset="utf-8"></meta>
    <meta http-equiv="X-UA-Compatible" content="IE=edge"></meta>
    <meta name="renderer" content="webkit" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0"></meta>
    <meta name="description" content=""></meta>
    <meta name="author" content=""></meta>
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"></meta>
    <link rel="icon" href="/img/icon.ico" type="image/x-icon" />

    <link rel="shortcut icon" href="/favicon.ico" />
    <link th:href="@{/webjars/bootstrap/3.3.7/dist/css/bootstrap.css}" rel="stylesheet">
    <link href="css/common/top_header.css" rel="stylesheet">
    <link href="css/common/bottom_footer.css" rel="stylesheet">
    <!--<link th:href="${myCss}" rel="stylesheet">-->
    <link th:href="@{/webjars/cropper/2.3.4/dist/cropper.css}" rel="stylesheet">
    <link href="css/common/rspMsg.css" rel="stylesheet">
    <link href="css/common/common.css" rel="stylesheet">

    <!--/* Per-page placeholder for additional links */-->
    <th:block th:replace="${links}" />
</head>

一般頁(yè)面調(diào)用公有css砾赔,并使用自己的css:

<!DOCTYPE html>
<html lang="zh-CN">
<head th:replace="common/htmlHead :: common_header(~{::title},~{::link})">
    <title>設(shè)置</title>
    <link rel="stylesheet" href="css/index.css">
</head>
</html>

公有js的提取方式是一樣的:

<!DOCTYPE html>
<html lang="zh-CN">
<div th:fragment="common_js(scripts)">
    <script th:src="@{/webjars/vue/2.3.4/dist/vue.js}"></script>
    <script th:src="@{/webjars/vue-resource/1.3.1/dist/vue-resource.js}"></script>
    <script th:src="@{/webjars/jquery/3.2.1/dist/jquery.js}"></script>
    <script th:src="@{/webjars/tether/1.4.0/js/tether.js}"></script>
    <script th:src="@{/webjars/bootstrap/3.3.7/dist/js/bootstrap.js}"></script>
    <script th:src="@{/webjars/cropper/2.3.4/dist/cropper.js}"></script>
    <script src="js/common/top_header.js"></script>
    <script src="js/common/common.js"></script>

    <!--/* Per-page placeholder for additional js */-->
    <th:block th:replace="${scripts}" />
</div>
</html>

公有js的使用包一層div即可:

......
<body>
......

<!--使用公有js-->
<div th:replace="common/htmlJS::common_js(~{::script})">
    <!--每個(gè)頁(yè)面自己的js-->
    <script src="js/index.js"></script>
</div>
</body>
</html>

測(cè)試結(jié)果可用蔫骂,具體解釋請(qǐng)參考Thymeleaf官方文檔

另外本人使用的SpringBoot版本是1.5.4么翰,默認(rèn)的thymeleaf不是3.0版本,上面的測(cè)試需要thymeleaf 3.0版本才可以纠吴,需要修改下pom.xml文件硬鞍,添加以下配置即可:

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
        <!-- set thymeleaf version -->
        <thymeleaf.version>3.0.0.RELEASE</thymeleaf.version>
        <thymeleaf-layout-dialect.version>2.0.0</thymeleaf-layout-dialect.version>
    </properties>

最后幫朋友打個(gè)小廣告

一個(gè)有趣的迷你小程序

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市戴已,隨后出現(xiàn)的幾起案子固该,更是在濱河造成了極大的恐慌,老刑警劉巖糖儡,帶你破解...
    沈念sama閱讀 219,366評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件伐坏,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡握联,警方通過(guò)查閱死者的電腦和手機(jī)桦沉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,521評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)每瞒,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人纯露,你說(shuō)我怎么就攤上這事剿骨。” “怎么了埠褪?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,689評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵浓利,是天一觀(guān)的道長(zhǎng)。 經(jīng)常有香客問(wèn)我钞速,道長(zhǎng)贷掖,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,925評(píng)論 1 295
  • 正文 為了忘掉前任渴语,我火速辦了婚禮苹威,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘驾凶。我一直安慰自己牙甫,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,942評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布狭郑。 她就那樣靜靜地躺著腹暖,像睡著了一般。 火紅的嫁衣襯著肌膚如雪翰萨。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,727評(píng)論 1 305
  • 那天糕殉,我揣著相機(jī)與錄音亩鬼,去河邊找鬼。 笑死阿蝶,一個(gè)胖子當(dāng)著我的面吹牛雳锋,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播羡洁,決...
    沈念sama閱讀 40,447評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼玷过,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了筑煮?” 一聲冷哼從身側(cè)響起辛蚊,我...
    開(kāi)封第一講書(shū)人閱讀 39,349評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎真仲,沒(méi)想到半個(gè)月后袋马,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,820評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡秸应,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,990評(píng)論 3 337
  • 正文 我和宋清朗相戀三年虑凛,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了碑宴。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,127評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡桑谍,死狀恐怖延柠,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情锣披,我是刑警寧澤贞间,帶...
    沈念sama閱讀 35,812評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站盈罐,受9級(jí)特大地震影響榜跌,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜盅粪,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,471評(píng)論 3 331
  • 文/蒙蒙 一钓葫、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧票顾,春花似錦础浮、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,017評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至含鳞,卻和暖如春影锈,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背蝉绷。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,142評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工鸭廷, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人熔吗。 一個(gè)月前我還...
    沈念sama閱讀 48,388評(píng)論 3 373
  • 正文 我出身青樓辆床,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親桅狠。 傳聞我的和親對(duì)象是個(gè)殘疾皇子讼载,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,066評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容