.js
和.css
文件縮小的常見做法是創建.min.js
和.min.css
文件。問題是ShakeFilePatterns將使用此方案與//*.js
這樣的模式匹配縮小和非縮小文件。 docs似乎建議爲每個像reg.js
和min.js
的每個類似的擴展,但我不確定這是我想採取的路徑。這怎麼能在Shake中解決?如何使用Shake FilePatterns來縮小JS和CSS文件?
編輯:問題是使用getDirectoryFiles
:
js <- getDirectoryFiles "" ["//*.js"]
let jsMins = map (-<.> "min" <.> "js") js
need jsMins
有一個爲"//*.min.js
的目標是工作得很好,但getDirectoryFiles "" ["//*.js"]
開始拿起產生.min.js
文件。
您需要一個既能拒絕又能接受基於它們名稱的文件的模式(即:像'^。*(?<!\。min)\。js $')這樣的正則表達式。我敢肯定,這不能用Shake FilePatterns來完成,因爲他們只承認,但不能拒絕基於名稱的文件。也許你可以預先篩選文件列表來排除那些名字中帶有「.min。」的文件。 –
@ AlainO'Dea是正確的,Shake FilePattern不能拒絕基於他們的名字的路徑 - 這是一種非常有限的匹配語言形式。 –
@ AlainO'Dea你知道我可以如何預先過濾發送給'getDirectoryFiles'的模式嗎?這就是真正的問題所在。 –