webpack.md
Webpack
是一個現代 JavaScript 應用程式的靜態模組打包工具(module bundler),能將專案中的 JavaScript、CSS、圖片等資源打包為可部署的靜態資產,廣泛用於前端開發流程中。
Webpack 的核心功能
將多個模組(module)與資源打包成單一或多個 bundle
支援 ES6 模組語法(import/export)
使用 Loader 處理 CSS、SCSS、圖片等非 JavaScript 資源
使用 Plugin 擴充功能,如壓縮、環境注入、Html 產生等
支援開發伺服器(webpack-dev-server)與熱更新(HMR)
常見指令與設定
安裝 Webpack
npm install --save-dev webpack webpack-cli
建立基本設定檔 webpack.config.js
webpack.config.js
const path = require('path');
module.exports = {
entry: './src/index.js',
output: {
filename: 'bundle.js',
path: path.resolve(__dirname, 'dist')
},
module: {
rules: [
{
test: /\.css$/,
use: ['style-loader', 'css-loader']
}
]
}
};
打包專案
npx webpack
是否仍需學 Webpack?
✅ 適合學習的情境:
需要高度自訂的前端建構流程(如老專案、複雜依賴管理)
維護既有使用 Webpack 的大型專案
進階 React/Vue 工程化開發需求
❌ 可選擇跳過的情境:
使用 Vite、Next.js、Nuxt、Create React App 等現代工具 已隱藏 Webpack 細節
小型或原型開發可不必深入了解 Webpack 配置
替代工具簡介
工具
優勢
Vite
更快的熱更新與模組載入、預設支援 ES 模組
Parcel
零設定打包工具,適合快速啟動專案
ESBuild
超高速打包器,適合 CLI 或工具鏈整合
總結來說,Webpack 不再是所有專案必學的工具,但對需要自訂構建流程或維護老專案的開發者而言仍具備價值。若你熟悉 React/Vue 並希望深入工程化開發,Webpack 仍值得理解。
Last updated