webpack打包原理阮一峰 webpack生成bundle.js文件為什么那么大,會(huì)影響加載速度嗎?
webpack生成bundle.js文件為什么那么大,會(huì)影響加載速度嗎?當(dāng)然,它會(huì)比較大,因?yàn)椴粌H打包了您開(kāi)發(fā)的JavaScript文件,而且打包了依賴(lài)項(xiàng)(即那些第三方庫(kù)文件),這確實(shí)是比較大的。we
webpack生成bundle.js文件為什么那么大,會(huì)影響加載速度嗎?
當(dāng)然,它會(huì)比較大,因?yàn)椴粌H打包了您開(kāi)發(fā)的JavaScript文件,而且打包了依賴(lài)項(xiàng)(即那些第三方庫(kù)文件),這確實(shí)是比較大的。webpack具有解決依賴(lài)關(guān)系、多模塊標(biāo)準(zhǔn)支持、多功能插件支持等優(yōu)點(diǎn)。與這些軟件工程中迫切需要解決的問(wèn)題相比,“大”可以通過(guò)其他途徑來(lái)解決。例如,uglify可以在很大程度上壓縮源代碼并減少其體積?;蛘咄ㄟ^(guò)nginx_uucomp_uu2;的gzip,level選項(xiàng)可以設(shè)置從1到9的不同壓縮級(jí)別,以降低網(wǎng)絡(luò)傳輸壓力。兩者混用的效果非常好,也是最常見(jiàn)、最有效的方法反應(yīng).js經(jīng)過(guò)uglify,源文件不到200K,如果用nginx壓縮,用戶(hù)可以用40K下載,在今天的網(wǎng)絡(luò)環(huán)境下,除非有準(zhǔn)確的測(cè)試結(jié)果,否則根本不需要考慮文件大小的問(wèn)題開(kāi)始。我們已經(jīng)不在那個(gè)時(shí)代了
如果你想更換網(wǎng)頁(yè)包,你必須看看它解決了什么痛點(diǎn)。沒(méi)有任何配置,開(kāi)發(fā)人員就無(wú)法使用它。隨著webpack的更新,它還可以達(dá)到打包配置很少的項(xiàng)目的目的,還可以根據(jù)需要添加自定義配置。
另一個(gè)非常重要的一點(diǎn)是生態(tài)學(xué)。目前,公園的生態(tài)還不完善。一旦出了問(wèn)題,我真的不知道怎么解決。不是每個(gè)人都會(huì)看源代碼來(lái)解決問(wèn)題。