2016-03-09 28 views
2

中從clientlib中排除css我在我的網站中使用了單個clientlib來處理所有頁面。只有一個頁面,我需要從clientlib中排除一個css文件。 在這種情況下,我應該爲該頁面創建不同的clientlib和不同的模板嗎? 或 有沒有其他方法可以做到這一點?如何在CQ

回答

2

clientlibs的內容由css.txt和js.txt文件確定,這些文件只是硬編碼列表。當部署應用程序時,clientlib會被彙編,因此在運行時修改它們的內容會有問題。

因此,您將需要多個clientlib來描述兩個不同的css文件列表。請記住,您可以使用「嵌入」,「依賴」和「類別」關係,以便更輕鬆地引用它們。想象一下兩個簡單的客戶端庫名爲A和B - A包含A.css,而B包含B.css。

現在想象我有兩個網頁:Cats.html和Dogs.html。貓需要兩種樣式表,但狗只需要B.css。爲了達到這個目的,我可以給clientlib A一個「cats」類別,clientlib B一個「cats」和「dogs」兩個類別。

這樣,當我使用類別「cats」爲Cats頁面獲取我的clientlibs時,我將同時獲得兩個樣式表。當我使用類別「狗」時,我只會得到B.css。

這裏有一個很好的解釋:http://blogs.adobe.com/experiencedelivers/experience-management/clientlibs-explained-example/

+0

感謝@jwepurchase的答覆。 – Njane

+0

其實我需要file1.css,file2.css,file3.css,file4.css和其他頁面的順序相同,並且需要單獨排除單個頁面的file3.css。需要保持相同的順序;否則內容會越來越重疊。你能幫忙嗎? – Njane

+1

選項1 - 使用大量粘貼劑。製作3個客戶庫:(1,2),(3)和(4)。然後再做兩個不包含文件和第一個依賴關係的文件 - 依賴於(1,2),(3)和(4);另一個只取決於(1,2)和(4)。選項2:在css.txt文件中有兩個絕對路徑的clientlib。 – jwepurchase