2015-09-21 71 views
0

我正在努力縮小和uglify我的JavaScript文件。 我想知道適當的尺寸有多大。 如果我將所有js文件合併到一個文件中(通過縮小和uglifying),它會大於1mb。 我想,最好把它們分成2-3個文件(每個200kb-300kb),而不是一個大文件(1mb)。適當的尺寸爲Javascript

任何人都可以提出建議嗎? 像100KB〜300KB或1MB〜2MB

============附加註釋============

我使用Django(後端) & angularJS(前端)。 據我所知,angularJS的所有js文件應該在發送索引(根html文件)html文件時發送給用戶。 這就是爲什麼連接js文件(包括外部js文件,如jquery,bootstrap,angular,媒體播放器等)超過1mb的原因。

+0

對於HTTP/1.1,規則是資源少通常更好。對於HTTP/2,更多的資源不一定會導致更多的請求,因此較小的文件可以導致更好的緩存。 –

+2

越少越好,但我會提到我的遊戲的代碼庫的整個JS部分在*縮小之前是450kb *。如果你在*縮小之後獲得1Mb *,那麼就會有一些錯誤。 –

+0

什麼是用例?網站?遊戲? :) – Spaceman

回答

1

沒有人適當的大小。字節越少越好,但這取決於您的代碼庫,以便確定您實際可以獲得的小小。文件越大,檢索文件的網絡延遲越大(因此,這會對用戶造成更大的負面影響)。所以如果你不得不提出一個通用的「規則」,那麼越小越好。

+0

感謝您的回覆 – kyle

1

對於您的問題沒有正確的答案。一些建議,因爲你有一個大的應用程序加載:

  • 模塊分割你的應用程序,並根據需要加載模塊,這樣就可以快速啓動應用程序和用戶將需要其他的模塊,因爲它使用該應用程序。
  • 顯示一些視覺反饋,當你加載所需的文件,最常見的例子是一個紡車,但它可能是一個乒乓球遊戲。關鍵是要招待用戶,因爲沒有人想等待
  • 使用服務器和客戶端緩存,不要忘記添加利用客戶端緩存的緩存標頭
  • 拆分供應商的構建源代碼,供應商往往會改變減少,所以你可以更多地利用緩存
+0

首先,感謝您的回覆。 1)在模塊中分割你的應用程序,並根據需要加載模塊:是的,我真的這樣做了,但正如我上面提到的,因爲我使用AngularJS,所有的js文件應該首先發送給用戶。 2)在加載所需文件時顯示一些視覺反饋。是的,它已被添加。 3)使用服務器和客戶端緩存。我沒有想過。我會仔細研究它4)從供應商拆分你的構建源代碼。我會考慮它謝謝! – kyle