2015-04-24 35 views
2

在純粹的前端應用程序中縮小和捆綁js/css的最佳做法是什麼?這些工具如何工作?前端開發人員如何捆綁和縮小文件?

我知道如何使用服務器端應用程序,如.NET/Java/LAMP /等。但是那些純粹的前端項目,SPA項目或者後端項目,如今這些建立在諺語,燼or或角色之上呢?假設您的整個項目由HTML/css/js組成,它們與其他地方的RESTful服務進行交互。

你用什麼樣的工藝或工具來縮小和捆綁資源?

我見過這種存在的咕嚕插件,但是我發現這個文檔非常神奇,而且我還不清楚它們是如何工作的。

具體地說,莫非工具:

1)與SRC =「/ JS替換SRC = 」/ JS/a.js「,SRC = 」/ JS/b.js「/捆綁A + B .min.js「? (並與css?)在源html文件?

2)開發和發佈有不同的模式,還是隻在項目發佈時才運行?

還是資源請求完全由js工具管理,js/css文件必須通過庫函數請求嗎?在這種情況下,延遲不會明顯嗎?

謝謝。

回答

5

通過使用構建工具,前端開發人員可以在開發時縮小javascript,css甚至圖像和html文件的大小。最常見的是咕嚕咕嚕咕嚕咕嚕咕咕咕咕咕咕咕咕咕咕咕咕咕咕

您可以配置grunt任務,如grunt-contrib-uglifygrunt-contrib-copy,並將這些任務置於grunt-contrib-watch任務之下。讓grunt watch任務監視您修改的文件,並且每次檢測到更改時,都會自動生成這些.min文件。

這些構建工具對您的應用程序沒有影響,它們在文件被加密之前運行。你認爲有一個簡單的方法可以做到這一點是正確的。我建議你看看grunt getting startedsample gruntfile,或者一個使用grunt - here's mine的項目,它會根據你的要求進行縮小。克隆我的回購,運行sudo npm install,然後sudo grunt。我沒有在我的項目中設置監視,但咕嚕聲記錄很好。

+0

另一個有用的grunt任務是'grunt-contrib-concat',它結合了文件 –

+0

謝謝你的好例子。我看了一下,當我回家時會真正嘗試一下。但是我仍然有和以前一樣的問題:index.html中的如何轉換爲對js/app/app.min.js的請求? – Lonimor

+0

好的 - 它沒有。你需要直接引用它爲'src =「js/app/app.min.js」'。你也可能想檢查接受的答案:) –