iT邦幫忙

鐵人檔案

第 12 屆 iThome 鐵人賽
回列表
Modern Web

前端建置工具完全手冊 系列

前端框架五花八門,可是建置工具卻只更新了 2 3 代而已,相較之下要來的穩定多了,這些工具如 webpack, babel 都是我們在現代開發前端時不知不覺之中得去使用到的工具,可是我們真的了解這些工具嗎?現在我們大多都靠著框架提供的基本設定就搞定了這些工具,會不會有一天,我們非得正面面對這些工具呢?比如只要正確的設定好 webpack 你就可以在打包時順便的對圖片做最佳化,還可以做 prerender 來提供更好的 SEO

這系列不只是介紹這些工具的使用方法,還會去探究它們底層的實作原理,以及如何寫個 plugin ,完全客制化這些工具的功能

鐵人鍊成 | 共 30 篇文章 | 23 人訂閱 訂閱系列文 RSS系列文
DAY 11

Day 11: 寫個 babel macro

在前一篇有提到寫 babel macro 比較簡單,這邊就來看看一個 babel macro 的基本架構: const { createMacro } = re...

2020-09-26 ‧ 由 DanSnow 分享
DAY 12

Day 12: webpack

現在開發前端只要你有用到什麼框架,大概都會用到 webpack ,雖然就如同之前所說的,它有可能是包在底層而你使用到了卻沒有注意到 webpack 除了核心的...

2020-09-27 ‧ 由 DanSnow 分享
DAY 13

Day 13: webpack 進階設定

雖說這篇應該要來更詳細的介紹 webpack 的設定,不過其實 webpack 的設定真的很多,我只能找比較可能會用到的設定介紹了,另外因為在寫這篇時 webp...

2020-09-28 ‧ 由 DanSnow 分享
DAY 14

Day 14: webpack 是如何運作的

這篇的完整的程式可以到 https://github.com/DanSnow/ironman-2020/tree/master/build-tool/pack...

2020-09-29 ‧ 由 DanSnow 分享
DAY 15

Day 15: webpack loader

webpack loader 之前也講過,能把檔案做預先處理,在 「最後」 轉換成 webpack 能夠理解的 js 來讓 webpack 處理,在 webpa...

2020-09-30 ‧ 由 DanSnow 分享
DAY 16

Day 16: 實作個 webpack loader

這篇的範例程式碼在 https://github.com/DanSnow/ironman-2020/tree/master/build-tool/packag...

2020-10-01 ‧ 由 DanSnow 分享
DAY 17

Day 17: webpack plugin

webpack 大概是我目前看過彈性最高的套件了,只要你知道它的 plugin 的 API ,幾乎什麼東西都能自由修改,不過這麼自由的 API 其實也有個不小的...

2020-10-02 ‧ 由 DanSnow 分享
DAY 18

Day 18: webpack tapable

如果你有在 webpack 的官網上找到關於 tapable 的描述的話,官網上是說 tapable 是 webpack 的骨幹 (backbone) ,在寫...

2020-10-03 ‧ 由 DanSnow 分享
DAY 19

Day 19: 實作個 webpack plugin

這篇的範例程式碼在 https://github.com/DanSnow/ironman-2020/tree/master/build-tool/packag...

2020-10-04 ‧ 由 DanSnow 分享
DAY 20

Day 20: rollup

rollup 是另一個 bundler ,不過它有幾個跟 webpack 不同的特點: 能編出 es6 module 預設會做 tree shaking ,跟...

2020-10-05 ‧ 由 DanSnow 分享