作 者:居玉皓 著
定 價:99
出 版 社:機械工業出版社
出版日期:2022年03月01日
頁 數:244
裝 幀:平裝
ISBN:9787111702252
(1)作者背景資深:作者是資深前端技術專家,Webpack技術布道者,美國*大免費流媒體播放平臺前端專家,知名開源打包工具YKit主導者和核心開發者。(2)4維度全面展開:從功能特性、工作原理、性能優化、項目實戰4個維度全面展開,提供示例代碼。(3)第1版廣受好評:第1版豆瓣評分8.6,京東和好評率近99.9%,是前端領域的暢銷書,被讀者公認為是Webpack領域的標準性著作。
●前言
第1章 Webpack簡介
1.1 何為Webpack
1.2 為什麼需要Webpack
1.2.1 何為模塊
1.2.2 JavaScript中的模塊
1.2.3 模塊打包工具
1.2.4 為什麼選擇Webpack
1.3 安裝
1.4 打包第一個應用
1.4.1 Hello World
1.4.2 使用npm scripts
1.4.3 使用默認目錄配置
1.4.4 使用配置文件
1.4.5 webpack-dev-server
1.5 本章小結
第2章 模塊打包
2.1 CommonJS
2.1.1 模塊
2.1.2 導出
2.1.3 導入
2.2 ES6 Module
2.2.1 模塊
2.2.2 導出
2.2.3 導入
2.2.4 復合寫法
2.3 CommonJS與ES6 Module的區別
2.3.1 動態與靜態
2.3.2 值復制與動態映射
2.3.3 循環依賴
2.4 加載其他類型的模塊
2.4.1 非模塊化文件
2.4.2 AMD
2.4.3 UMD
2.4.4 加載npm模塊
2.5 模塊打包原理
2.6 本章小結
第3章 資源的輸入和輸出
3.1 資源處理流程
3.2 配置資源入口
3.2.1 context
3.2.2 entry
3.2.3 實例
3.3 配置資源出口
3.3.1 filename
3.3.2 path
3.3.3 publicPath
3.3.4 實例
3.4 本章小結
第4章 預處理器
4.1 一切皆模塊
4.2 loader概述
4.3 loader的配置
4.3.1 loader的引入
4.3.2 鏈式loader
4.3.3 loader options
4.3.4 更多配置
4.4 常用loader介紹
4.4.1 babel-loader
4.4.2 ts-loader
4.4.3 html-loader
4.4.4 handlebars-loader
4.4.5 file-loader
4.4.6 url-loader
4.5 自定義loader
4.6 本章小結
第5章 樣式處理
5.1 分離樣式文件
5.1.1 extract-text-webpack-plugin
5.1.2 多樣式文件的處理
5.1.3 mini-css-extract-plugin
5.2 樣式預處理
5.2.1 Sass與SCSS
5.2.2 Less
5.3 tCSS
5.3.1 tCSS與Webpack
5.3.2 自動前綴
5.3.3 stylelint
5.3.4 CSSNext
5.4 CSS Modules
5.5 本章小結
第6章 代碼分片
6.1 通過入口劃分代碼
6.2 CommonsChunkPlugin
6.2.1 提取vendor
6.2.2 設置提取範圍
6.2.3 設置提取規則
6.2.4 hash與長效緩存
6.2.5 CommonsChunkPlugin的不足
6.3 optimization.SplitChunks
6.3.1 從命令式到聲明式
6.3.2 默認的異步提取
6.3.3 配置
6.4 資源異步加載
6.4.1 import()
6.4.2 異步chunk的配置
6.5 本章小結
第7章 生產環境配置
7.1 環境配置的封裝
7.2 開啟production模式
7.3 環境變量
7.4 source-map
7.4.1 source-map原理
7.4.2 source-map配置
7.4.3 source-map安全
7.5 資源壓縮
7.5.1 壓縮JavaScript
7.5.2 壓縮CSS
7.6 緩存
7.6.1 資源hash
7.6.2 輸出動態HTML
7.6.3 使chunk id更穩定
7.7 bundle體積監控和分析
7.8 本章小結
第8章 打包優化
8.1 HappyPack
8.1.1 工作原理
8.1.2 單個loader的優化
8.1.3 多個loader的優化
8.2 縮小打包作用域
8.2.1 exclude和include
8.2.2 noParse
8.2.3 IgnorePlugin
8.2.4 緩存
8.3 動態鏈接庫與DllPlugin
8.3.1 vendor配置
8.3.2 vendor打包
8.3.3 鏈接到業務代碼
8.3.4 潛在問題
8.4 去除死代碼
8.4.1 ES6 Module
8.4.2 使用Webpack進行依賴關繫構建
8.4.3 使用壓縮工具去除死代碼
8.5 本章小結
第9章 開發環境調優
9.1 Webpack開發效率插件
9.1.1 webpack-dashboard
9.1.2 webpack-merge
9.1.3 speed-measure-webpack-plugin
9.1.4 size-plugin
9.2 模塊熱替換
9.2.1 開啟HMR
9.2.2 HMR原理
9.2.3 HMR API示例
9.3 本章小結
第10章 Webpack打包機制
10.1 總覽
10.2 準備工作
10.3 緩存加載
10.4 模塊打包
10.4.1 Compiler
10.4.2 Compilation
10.4.3 Resolver
10.4.4 Module Factory
10.4.5 Parser
10.4.6 模板渲染
10.5 深入Webpack插件
10.5.1 Tapable
10.5.2 插件的協同模式
10.6 本章小結
第11章 實戰案例
11.1 React應用
11.1.1 基礎配置
11.1.2 JavaScript處理
11.1.3 TypeScript處理
11.1.4 樣式處理
11.1.5 靜態資源
11.1.6 多頁應用公共代碼優化
11.1.7 長效緩存
11.2 Vue應用
11.2.1 手動搭建Vue項目
11.2.2 通過@vue/cli搭建項目
11.3 本章小結
第12章 更多JavaScript打包工具
12.1 Rollup
12.1.1 配置
12.1.2 Rollup去除死代碼
12.1.3 可選的輸出格式
12.1.4 使用Rollup構建JavaScript庫
12.2 Parcel
12.2.1 打包速度
12.2.2 零配置
12.3 esbuild
12.3.1 打包速度
12.3.2 缺陷
12.4 Vite
12.4.1 取長補短
12.4.2 打包流程優化
12.5 打包工具的發展趨勢
12.5.1 性能與通用性
12.5.2 配置極小化與工程標準化
12.5.3 WebAssembly
12.6 本章小結
這是一本講解如何使用Webpack構建現代Web應用的著作。第1版豆瓣評分8.6,京東和好評率近99.9%,是前端領域的暢銷書,被讀者公認為是Webpack領域的標準性著作。全書圍繞Webpack的功能特性、工作原理、性能優化、項目實戰4個維度全面展開,從基本的使用場景到復雜的應用實例,再到繫統性的優化,由淺入深講解Webpack的各個特性,同時剖析其背後的工作原理,讓讀者能零基礎快速掌握Webpack並輕松實現進階。作者是資深的前端技術專家,是知名開源打包工具YKit的主導者和核心開發者,也是Webpack堅定不移的布道者。本書內容全部來自作者的實戰經驗,盡量避開了網絡上已經發表的各種公開資料,思路簡潔、深入,原理與實操並重。與第1版相比,第2版做了如下更新:(1)結合WebpackZ新的技術,對全書內容進行了全面更新;(2)收集並分析了讀者對第1版的反饋,完善了第1版的不足之處;(3)等