網站首頁 編程語言 正文
一、寫在前面
面試中問道webpack如何來優化前端性能,此時我們該如何回答,
下面將總結一下。
二、優化方案2.1、壓縮代碼
刪除多余代碼,注釋,簡化代碼的寫法等等方式。可以利用webpack
的uglifyJsPlugin
和ParallelUglifyPlugin
來壓縮js文件,利用cssnano
來壓縮css資源。2.2、利用CDN加速:
在構建過程中,將引用的靜態資源修改為CDN上對應的路徑。我們想引用一個庫,但是又不想讓webpack打包,并且又不影響我們在程序中以CMD、AMD或者window/global全局等方式進行使用,那就可以通過配置externals。
configureWebpack: {
externals: {
"vue": "Vue",
"vue-router": "VueRouter",
"axios": "axios",
"moment": "moment",
"element-ui": "ELEMENT",
}
}
2.3、Tree shaking:
將代碼中永遠不會?到的?段刪除掉。可以通過在啟動webpack時追加參數 --optimize-minimize 來實現。2.4、Code Splitting
將代碼按路由維度或者組件分塊(chunk),這樣做到按需加載,同時可以充分利?瀏覽器緩存。例如vue中的異步組件就是按需加載。2.5、提取公共第三?庫: 提取公共第三?庫:
來進?公共模塊抽取,利?瀏覽器緩存可以?期緩存這些?需頻繁變動的公共代碼。
原文鏈接:https://blog.csdn.net/weixin_47450807/article/details/124192397
- 上一篇:前端開發中幾種存儲方式詳解
- 下一篇:提高css性能的優化方法有哪些
相關推薦
- 2022-02-20 C#?.NET實現掃描識別圖片中的文字_C#教程
- 2022-09-26 Python?Celery定時任務詳細講解_python
- 2022-07-02 pyscript的簡單應用實現_python
- 2022-12-05 python中的單下劃線與雙下劃線以及絕對導入與相對導入_python
- 2022-11-19 Python教程之無限迭代器的使用詳解_python
- 2022-05-26 flutter實現底部抽屜效果_Android
- 2022-06-06 Ubuntu系統-FFmpeg安裝及環境配置
- 2022-09-26 你了解Redis事務嗎_Redis
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支