原文:.15-淺析webpack源碼之WebpackOptionsApply模塊-plugin事件流總覽

總體過了一下后面的流程,發現Compiler模塊確實不適合單獨講解,這里繼續講解后面的代碼: 這行代碼與之前設置options默認值非常相似,但是復雜程度根本不是一個次元的。 這一節只能簡單的看一眼內部到底有多少東西,整理后源碼如下: 這個模塊除去父類引入,其余插件光頂部引入就有 個,簡直就是插件之王。 略去具體插件內容,先看流程,父類其實是個接口,啥都沒有: 接下來是一個唯一的主方法proce ...

2017-12-21 16:05 0 979 推薦指數:

查看詳情

.3-淺析webpack源碼之預編譯總覽

  寫在前面:   本來一開始想沿用之前vue源碼的標題:webpack源碼之***,但是這個工具比較巨大,所以為防止有人覺得我裝逼跑來噴我(或者隨時鴿),加上淺析二字,以示慫。   既然是淺析,那么案例就不必太復雜,所以繼續按照之前vue源碼,以最簡單形式進行源碼分析,如下:   配置文件 ...

Tue Dec 12 00:14:00 CST 2017 3 1112
.25-淺析webpack源碼事件compilation(3)

  這一節跑下一批plugin。   希望不要跟上一節一樣,全是plugin。   流程如圖(看看流程圖就行了,后面也沒有什么內容): EnsureChunkConditionsPlugin   這個看看就懂,不解 ...

Tue Jan 09 02:03:00 CST 2018 1 1164
.14-淺析webpack源碼之Watchpack模塊

  解決掉了最頭疼的DirectoryWatcher內部實現,這一節可以結束NodeWatchFileSystem模塊。   關於watch的應用場景,仔細思考了下,這不就是熱重載的核心嘛。   首先是監視文件,觸發文件change事件后收集變動文件信息,重新進行打包,更新JS后觸發頁面重新 ...

Thu Dec 21 05:06:00 CST 2017 1 923
.6-淺析webpack源碼之validateSchema模塊

validateSchema模塊   首先來看錯誤檢測:   可以注意到,這里傳了兩個參數,其實第一個參數來源於一個JSON文件:   這個JSON文件非常大,可以觀察一下部分內容:   從描述可以猜測,這里的key對應options中 ...

Thu Dec 14 03:22:00 CST 2017 0 2431
.10-淺析webpack源碼之graceful-fs模塊

  在cachedInput、output、watch三大文件系統中,output非常簡單,沒有必要講,其余兩個模塊依賴於input模塊,而input主要是引用了graceful-fs的部分API,所以這節來講講graceful-fs。   上一節整理的源碼如下:   內容包含 ...

Sat Dec 16 08:24:00 CST 2017 0 2233
.4-淺析webpack源碼之convert-argv模塊

  上一節看了一眼預編譯的總體代碼,這一節分析convert-argv模塊。   這個模塊主要是對命令參數的解析,也是yargs框架的核心用處。   生成默認配置文件名數組   函數內部,首先判斷了argv.d與argv.p屬性是否存在,這個屬性來源於參數d與p ...

Tue Dec 12 08:11:00 CST 2017 1 1491
15-浮動

浮動 浮動是css里面布局最多的一個屬性,也是很重要的一個屬性。 float:表示浮動的意思。它有四個值。 none: 表示不浮動,默認 left: 表示左浮動 right:表示右 ...

Tue May 15 18:57:00 CST 2018 0 2049
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM