Dark mode
ภาพรวมการทำงานของ Vite
ฟีเจอร์ | Vite | Webpack | Parcel | Snowpack |
---|---|---|---|---|
Development Mode | ใช้ Native ESM | Bundle-based | Bundle-based | ESM-based |
Production Build | ใช้ Rollup | Webpack | Parcel Bundler | Snowpack + esbuild |
Build Tool | esbuild (dev) / Rollup (prod) | Webpack | Parcel | esbuild |
HMR | ⚡ เร็วมาก | 🐢 ช้า | ⚡ เร็ว | ⚡ เร็ว |
Start Time | ⚡ <1s | 🐢 10-60s | ⚡ 2-5s | ⚡ 1-3s |
Config | ง่าย | ซับซ้อน | ไม่ต้อง config | ง่าย |
Development Mode (vite dev
)
ฟีเจอร์ | Vite | Webpack | Parcel | Snowpack |
---|---|---|---|---|
Native ESM | ✅ | ❌ (ใช้ bundle) | ✅ | ✅ |
HMR | ⚡ เร็วมาก | 🐢 ช้า | ⚡ เร็ว | ⚡ เร็ว |
Fast Refresh | ✅ | ✅ (ต้องตั้งค่า) | ✅ | ✅ |
Source Maps | ✅ | ✅ | ✅ | ✅ |
Dev Server | ⚡ เร็วมาก | 🐢 ช้า | ⚡ เร็ว | ⚡ เร็ว |
Config File | vite.config.js | webpack.config.js | ไม่ต้อง | snowpack.config.js |
ตัวอย่างคำสั่ง | vite dev | webpack serve | parcel index.html | snowpack dev |
Production Build (vite build
)
ฟีเจอร์ | Vite | Webpack | Parcel | Snowpack |
---|---|---|---|---|
Bundler | Rollup | Webpack | Parcel | esbuild |
Tree Shaking | ✅ | ✅ | ✅ | ✅ |
Code Splitting | ✅ | ✅ | ✅ | ✅ |
Minification | ✅ (esbuild) | ✅ (Terser) | ✅ | ✅ (esbuild) |
Build Time | ⚡ เร็วมาก | 🐢 ช้ามาก | ⚡ เร็ว | ⚡ เร็วมาก |
Output Size | ⚡ เล็ก | ใหญ่ | ใหญ่ | ⚡ เล็ก |
Config File | vite.config.js | webpack.config.js | ไม่ต้อง | snowpack.config.js |
ตัวอย่างคำสั่ง | vite build | webpack --mode production | parcel build | snowpack build |
การทำงานกับ Framework ต่างๆ
ฟีเจอร์ | Vue | React | Svelte | Preact | Lit |
---|---|---|---|---|---|
Official Plugin | ✅ | ✅ | ✅ | ✅ | ✅ |
HMR | ⚡ เร็วมาก | ⚡ เร็ว | ⚡ เร็ว | ⚡ เร็ว | ⚡ เร็ว |
Fast Refresh | ✅ | ✅ | ✅ | ✅ | ❌ |
SSR | ✅ | ✅ | ✅ | ✅ | ✅ |
JSX/TSX | ✅ | ✅ | ❌ | ✅ | ❌ |
CSS Modules | ✅ | ✅ | ✅ | ✅ | ✅ |
TypeScript | ✅ | ✅ | ✅ | ✅ | ✅ |
ตัวอย่างคำสั่ง | npm create vite@latest -- --template vue | npm create vite@latest -- --template react | npm create vite@latest -- --template svelte | npm create vite@latest -- --template preact | npm create vite@latest -- --template lit |
เปรียบเทียบ Performance
ตัวชี้วัด | Vite | Webpack | Parcel | Snowpack |
---|---|---|---|---|
Dev Server Start | ⚡ <1s | 🐢 10-60s | ⚡ 2-5s | ⚡ 1-3s |
HMR Update | ⚡ <50ms | 🐢 500ms-5s | ⚡ 100-500ms | ⚡ 50-200ms |
Production Build | ⚡ เร็วมาก | 🐢 ช้ามาก | ⚡ เร็ว | ⚡ เร็วมาก |
Memory Usage | ⚡ ต่ำ | 🐢 สูง | ⚡ ต่ำ | ⚡ ต่ำ |
Bundle Size | ⚡ เล็ก | ใหญ่ | ใหญ่ | ⚡ เล็ก |