2013-11-28 48 views
0

我有一個Less文件,其中包含一個CSS文件,然後是一組Less文件。用SquishIt我想合併和縮小這些,但它會忽略CSS文件,除非我將它重命名爲.css.less。我相信ProcessIncludes()是爲此目的而設計的,但沒有任何區別。SquishIt.Less ProcessIncludes()不適用於CSS文件

有誰知道爲什麼ProcessIncludes()不會對Less文件中鏈接的CSS文件做任何事情嗎?

(這是一個後續行動:this question約Squishit.Less不工作的話,那現在用於減檔。)

回答

1

dotLess有一個名爲「InlineCssFiles」的配置選項,我相信它可以滿足你的需求。您可以通過在較少的預處理器上覆蓋靜態屬性「EngineBuilder」(它是一個Func)來使用自己的配置。因此,在App_Start,你可以做這樣的事情:

LessPreprocessor.EngineBuilder =() => new EngineFactory 
      { 
       Configuration = new DotlessConfiguration 
        { 
         InlineCssFiles = true, 
        } 
      }.GetEngine(); 
+0

我有我的測試服務器上,這意味着我不能在此刻測試這個問題 - 但是這聽起來像我所需要的,而不是ProcessIncludes的選項。我找不到SquishIt.Less的任何像樣的文檔 - 我想我需要打開源代碼! :\ –

+0

是的,這總是一個問題。我想我會花一點時間在重要的公共方法中添加///註釋,並查看從那裏生成文檔的內容。我沒有真正使用.less,但我昨天讀了一些,我認爲上面的選項會幫助你。 – AlexCuse

+0

不知道什麼時候可以回去測試這個。有一個答案。 –

0

根據LESS文檔:

您可以同時導入CSS和LESS文件。只處理LESS文件導入語句,CSS文件導入語句保持原樣。

可以力更小,通過處理CSS文件:但是

@import (less) "file.css"; 

注意,這一切適用於official LESS implementation,不得在SquishIt工作。 SquishIt似乎使用了非常過時的編譯器dotless