PHP中文网2017-04-17 12:03:05
我曾提出了類似的問題,其中提到,分業務合併壓縮腳本的問題。裡面有部分答案還是值得思考的,分享與你
基於requirejs的前端模組化工程,可以選擇什麼工具來實現自動化壓縮和合併
ringa_lee2017-04-17 12:03:05
關於這個問題,我之前也有過相似的疑問。後來查閱了一些資料,以及請教了一些前輩之後,大概有了一些自己想法。
首先requirejs實現的是amd規範,當你在使用requirejs進行開發的開發的時候,因為要模組化,所以會產生很多js文件,特別是跟backbonejs一起用的時候。
在網路資源請求的過程中,載入一個體積稍大一點的檔案遠比載入許多個體積小的檔案要節省資源的多。
所以基於這個因素,使用requirejs將整站的腳本檔案打成一個檔案也無可厚非。
至於你的問題,如果將所有的腳本檔案直接打成一個main.js,那就意味著可能並不是我目前頁面需要的腳本檔案也會在目前頁面載入了。我個人覺得這可能就是一個文件數量和文件體積的把握了。要看項目的具體要求。
此外,如果在SPA(或非SPA)中,我們可以按照功能模板將頁面人為分類,然後每一大類下所有頁面的腳本文件打成一個文件,這樣根據不同功能頁面的入口加載不同的打包好的文件,應該可以稍微避免之前的問題了吧。