ViteãšWebpackã®éã â ç·šéäžã®ç¢ºèªãšãå ¬éçšã®ãã«ããåããã
åãç»é¢ããéçºãšæ¬çªã§ç¢ºèªãã
- ç·šéãšãã«ããåºå¥
- HMRãåºå¥
- èŠä»¶ãšæ¢åè³ç£ããæ¯èŒ
ãŸãããç·šéããšãå ¬éçšããäœéšãã
æ°ããViteã®vanillaãããžã§ã¯ãã§è©ŠããŸããNode.js 20.19以äžãŸãã¯22.12以äžãšnpmãå¿ èŠã§ããã³ãã¬ãŒãã®èŠä»¶ã確èªããŸãã
npm create vite@latest build-shopping -- --template vanilla
cd build-shopping
npm install
npm run dev
端æ«ã«åºãURLãéããindex.htmlã®ã¿ã€ãã«ããè²·ãç©ã¡ã¢ããžå€ããŸãã倿Žãåæ ãããããšã確èªããããCtrl+Cã§éçºãµãŒããŒãæ¢ããŸãã
npm run build
å
¬éçšã®ãã¡ã€ã«ãdistãžåºãã°ãç·šéã確èªããèµ·åãšå
¬éçšã®ãã«ããäœéšã§ããŸãããdistãã§ããããšãšããµãŒããŒãžã®å
¬éãæžãã ããšã¯å¥ã§ãã
æ¯èŒãããšãã®åã€ã®èгç¹
| èŠ³ç¹ | Vite 8 | Webpack |
|---|---|---|
| éçº | ESMæ¹åŒã®ãªã³ããã³ãé ä¿¡ãªã©ã䜿ã | å ¥å£ããäŸåãåŠçãããã³ãã«æ¹åŒãªã© |
| æ¬çªãã«ã | Rolldownã䜿ã | Webpackã§äŸåããŸãšãã |
| èšå® | åºæ¬èšå®ãšãã©ã°ã€ã³ã§æ¡åŒµ | entryã»loaderã»pluginãªã©ã§æ¡åŒµ |
| ç¶ç¶ã»ç§»è¡ | 察象ã®çã»ãã©ã°ã€ã³äºæãç¢ºèª | æ¢åã®èšå®è³ç£ã»åºåèŠä»¶ãç¢ºèª |
WebpackãåçŽãªæ§æãªãèšå®ãã¡ã€ã«ãªãã§å§ããããŸãããViteã¯æ°è¡ãWebpackã¯å¿ ãæ°çŸè¡ããšããæ¯ã¹æ¹ã§ã¯ãå®éã®èŠä»¶ãæããŠããŸããŸãã
HMRãšãæ¬çªã®éãã¯å¥
HMRã¯å®è¡äžã®ã¢ãžã¥ãŒã«ãæŽæ°ããæ©èœã§ããäž¡è ã«ãããŸãããå šãŠã®å€æŽã§ç¶æ ãä¿ãŠããšã¯éããŸãããéçºã®èµ·åæéã倿Žã®åæ æéãæ¬çªã®ãã«ãæéãå©çšè ã®ç»é¢è¡šç€ºæéã¯å¥ã ã«æž¬ããŸãã
ããå°ã詳ããïŒç§»è¡ã®ãã§ãã¯
- å¿ èŠãªå€æããã©ã°ã€ã³ã代æ¿ã§ãããã
- ç°å¢å€æ°ãå ¬éãã¹ã®æ±ããäžèŽãããã
- åããã©ãŠã¶ãŒã§åãããŒãžã衚瀺ã§ãããã
- ãã¹ããšå ¬éçšã®åºåãç¶æã§ãããã
Viteã®éçºãµãŒããŒã ããå°å ¥ããŠããæ¢åã®æ¬çªãã«ããšã®éãã確èªããå¿ èŠããããŸããéåºŠã®æåŸ ã ãã§äºã€ã®èšå®ãç¶æããéçšãå¢ãããŸããã
ãã³ã®ã³å çã®ãŸãšã
ããã«ãããŒã«ãã£ãŠåºãŠããããæžãããã¡ã€ã«ãã確èªã»å ¬éã§ããåœ¢ã«æŽããè£æ¹ããšæãã°ã ãããOKïŒ éžã¶åã«ãã©ã®äœæ¥ã«å°ã£ãŠããããäžã€èšã£ãŠã¿ããã
åèè³æ
- ViteïŒå°å ¥ â éçºãšæ¬çªã»èŠä»¶
- ViteïŒèæ¯ â ESMæ¹åŒãšäŸåã®äºååŠç
- Vite 8ã®å ¬é â Rolldownçµ±å
- WebpackïŒæŠå¿µ â å ¥å£ã»äŸåã»æ¡åŒµã»èšå®ãªãã®éå§
- WebpackïŒHMR â å®è¡äžã®ã¢ãžã¥ãŒã«æŽæ°