我有一個相當老式的web應用程序有不同的網址和頁面主要在服務器網站上爲每個,如/contacts
,/orders
,/orders/123456
。我應該將我的前端代碼分爲常用和頁面特定的部分嗎?
我想打破客戶端代碼轉換成通用和特定頁面的部分爲文件,這樣我會有這樣的文件列表:
/js/common.js
/js/login_page.js
/js/contacts_page.js
/js/orders_page.js
/js/orderview_page.js
...
這樣,我會在頁面中兩個鏈接 - 一個用於公用部分,另一個用於當前頁面代碼。
我認爲它可以使頁面加載更快,因爲不必加載與當前頁面無關的代碼,但只加載需要的代碼。
雖然,有一種趨勢是將整個文件集合成一個文件,使得第一次加載的時間更長,但隨後其他頁面代碼立即加載,因爲它已經在緩存中。
/js/app.bundle.js
我應該選擇什麼策略以及哪些因素會影響決策?
這個東西,afaik,就是隻保存一個包,用於保存一個http請求,這比發出兩個請求要快 - 一個用於通用代碼,一個用於特定 - 即使代碼量較大。但是,這實際上取決於瀏覽器處理併發請求的方式,對頁面正在執行的供應商腳本和其他資源的請求數以及頁面加載資源的域配置。我相信,一種策略在舊版瀏覽器中可能會更快,而在最新的瀏覽器中可能會更慢。然而,一個或兩個捆綁之間的差異很小。 – Sergeon