ÄÜÅÙÃ÷ »ó¼¼º¸±â
½ÇÀü ÄÚµå·Î ¹è¿ì´Â Vue.js


½ÇÀü ÄÚµå·Î ¹è¿ì´Â Vue.js

½ÇÀü ÄÚµå·Î ¹è¿ì´Â Vue.js

<¸¶¾ß ¼Îºó> Àú/<Á¤º´¿­> ¿ª | ÇѺû¹Ìµð¾î

Ãâ°£ÀÏ
2024-10-14
ÆÄÀÏÆ÷¸Ë
ePub
¿ë·®
7 M
Áö¿ø±â±â
PC½º¸¶Æ®ÆùÅÂºí¸´PC
ÇöȲ
½Åû °Ç¼ö : 0 °Ç
°£·« ½Åû ¸Þ¼¼Áö
ÄÜÅÙÃ÷ ¼Ò°³
ÀúÀÚ ¼Ò°³
¸ñÂ÷
ÇÑÁÙ¼­Æò

ÄÜÅÙÃ÷ ¼Ò°³

½Ç¹«¿¡ ¹Ù·Î Àû¿ë °¡´ÉÇÑ Äڵ常 ´Ù·ç´Â Vue ÇÙ½É °¡À̵å

Vue.js´Â ÀÚ¹Ù½ºÅ©¸³Æ® ÇÁ·¹ÀÓ¿öÅ© Áß¿¡¼­ °£Æí¼º°ú À¯¿¬¼ºÀ¸·Î ÁÖ¸ñ¹Þ°í ÀÖÀ¸¸ç, ºü¸£°Ô º¯È­ÇÏ´Â ÇÁ·±Æ®¿£µå °³¹ß ȯ°æ¿¡¼­ ±× Á߿伺ÀÌ ´õ¿í Ä¿Áö°í ÀÖ´Ù. ƯÈ÷, Vue 3¿Í Pinia, Vite µîÀÇ ÃֽŠµµ±¸µéÀÌ µîÀåÇÔ¿¡ µû¶ó °³¹ß È¿À²¼º°ú È®À强ÀÌ Å©°Ô Çâ»óµÇ¾ú´Ù.

ÀÌ Ã¥¿¡¼­´Â ÀÌ·¯ÇÑ ÃֽŠ±â¼ú È帧À» ¹Ý¿µÇØ Vue 3ÀÇ ÇÙ½É ±â´ÉÀ» ½Ç¹«¿¡ ¹Ù·Î Àû¿ëÇÒ ¼ö ÀÖµµ·Ï, ½Ç¿ëÀûÀÎ ÄÚµå ¿¹Á¦¿Í ÇÔ²² ±¸Ã¼ÀûÀ¸·Î ¼³¸íÇÑ´Ù. ÄÄÆ÷Áö¼Ç API, Pinia, ¶ó¿ìÅÍ ¼³Á¤, ±×¸®°í ¼­¹ö »çÀÌµå ·»´õ¸µ µî Çö´ë À¥ ¾ÖÇø®ÄÉÀÌ¼Ç ±¸Ãà¿¡ ÇʼöÀûÀÎ ÁÖÁ¦µéÀ» »ó¼¼È÷ ¼Ò°³ÇÑ´Ù. ¶ÇÇÑ, ÃֽŠÇÁ·±Æ®¿£µå °³¹ß Æ®·»µå¿¡ ¸ÂÃá ´ÜÀ§ Å×½ºÆ®, CI/CD ÅëÇÕ, Æ®·£Áö¼Ç ¹× ¾Ö´Ï¸ÞÀÌ¼Ç ±â´É±îÁö ¼³¸íÇÏ¸ç ½ÇÀü¿¡¼­ ¹Ù·Î »ç¿ëÇÒ ¼ö ÀÖ´Â ÇÁ·ÎÁ§Æ®¸¦ ±¸ÃàÇÏ´Â ¹æ¹ýÀ» Á¦½ÃÇÑ´Ù.

ÃʽÉÀÚµµ ½±°Ô µû¶óÇÒ ¼ö ÀÖµµ·Ï ±âÃʺÎÅÍ °í±Þ ±â¼ú±îÁö ü°èÀûÀ¸·Î ±¸¼ºµÇ¾î ÀÖ¾î, Vue.js¸¦ ¹è¿ì°íÀÚ ÇÏ´Â ¸ðµç ÇÁ·±Æ®¿£µå °³¹ßÀÚ¿¡°Ô ¿Ïº®ÇÑ ½ÇÀü °¡À̵尡 µÉ °ÍÀÌ´Ù. ÀÌ Ã¥À» ÅëÇØ Å©°Ô Çâ»óµÈ Vue.js ±â¼ú ¿ª·®À¸·Î ½ÇÁ¦ ÇÁ·ÎÁ§Æ®¿¡¼­ ¶Ù¾î³­ ¼º°ú¸¦ °ÅµÎ±æ ¹Ù¶õ´Ù.

ÀúÀÚ¼Ò°³

¸¶ÀÌÅ©·Î¼ÒÇÁÆ® ¼ö¼® ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾î. MBA, ÄÄÇ»ÅÍ °øÇÐ Çлç, °æÁ¦ÇÐ ÇÐ»ç µîÀÇ ´Ù¾çÇÑ Çо÷Àû ¹è°æÀ» °®Ãß°í ÀÖ´Ù. ¶ÇÇÑ À¥ ¹× ÇÁ·±Æ®¿£µå °³¹ß ºÐ¾ßÀÇ Àü¹®°¡À̸ç ŸÀÔ½ºÅ©¸³Æ®, ¸®¾×Æ®, Vue µî¿¡ µÎ·ç ´ÉÅëÇÏ´Ù. ±×³à´Â ¿ÀÇ ¼Ò½º ÀüÀÚ »ó°Å·¡ ÇÁ·¹ÀÓ¿öÅ©ÀÎ StorefrontUIÀÇ ÄÚ¾î ¸ÞÀÎÅ×À̳ÊÀ̱⵵ ÇÏ´Ù. °³¹ßÀڷμ­ Á¢±Ù¼º ³ôÀº °í¼º´É ÄÄÆ÷³ÍÆ®¸¦ Àü´ÞÇÏ´Â µ¥ ÁÖ·ÂÇϸç, ¹Ù´Ò¶ó ÀÚ¹Ù½ºÅ©¸³Æ® Áö½ÄÀÇ Á߿伺À» ¹«¾ùº¸´Ù °­Á¶ÇÑ´Ù. ÄÚµù ºÐ¾ß ¿Ü¿¡µµ ±¹Á¦ÀûÀ¸·Î ¸í¸ÁÀÌ ³ôÀº °­¿¬ÀÚÀÌÀÚ ÃâÆÇ ÀúÀڷμ­ ÀÚ½ÅÀÇ ¿ª·®À» À¯°¨¾øÀÌ ¹ßÈÖÇÏ°í ÀÖ´Ù. À¥ °³¹ß, UX/UI, Á¢±Ù¼º, °ß°íÇÑ ÄÚµù Ç¥ÁØÀ» ¿­Á¤ÀûÀ¸·Î ÁöÁöÇÏ¸ç ºí·Î±×(https://mayashavin.com), X(Twitter ) (@mayashavin), ÄÁÆÛ·±½º¸¦ ÅëÇØ Áö½ÄÀ» °øÀ¯ÇÑ´Ù. ÇÑÆíÀ¸·Î À¥ °³¹ß, ƯÈ÷ Vue¸¦ ÁÖÁ¦·Î ÇÑ ÇÚÁî¿Â ¿öÅ©¼¥À» ÁÖÃÖÇϱ⵵ ÇÑ´Ù.

¸ñÂ÷

CHAPTER 1 Vue.jsÀÇ ¼¼°è·Î

_1.1 Vue.js¶õ?
_1.2 Çö´ë À¥ °³¹ß°ú VueÀÇ ÀÌÁ¡
_1.3 Node.js ¼³Ä¡
_1.4 Vue °³¹ßÀÚ µµ±¸
_1.5 ºô´õ °ü¸® µµ±¸ Vite.js
_1.6 Vue ¾ÖÇø®ÄÉÀÌ¼Ç »ý¼º
_1.7 ÆÄÀÏ ¸®Æ÷ÁöÅ͸® ±¸Á¶
Á¤¸®

CHAPTER 2 VueÀÇ ±âº» ÀÛµ¿ ¹æ½Ä

_2.1 °¡»ó DOM µé¿©´Ùº¸±â
_2.2 Vue ¾Û ÀνºÅϽº ¹× ¿É¼Ç API
_2.3 ¿É¼Ç API Ž»ö
_2.4 ÅÛÇø´ ±¸¹®
_2.5 µ¥ÀÌÅÍ ÇÁ·ÎÆÛƼ¸¦ ÅëÇÑ ·ÎÄà »óÅ »ý¼º
_2.6 VueÀÇ ¹ÝÀÀ¼ºÀÌ ÀÛµ¿ÇÏ´Â ¹æ½Ä
_2.7 v-modelÀ» ÀÌ¿ëÇÑ ¾ç¹æÇâ ¹ÙÀεù
_2.8 v-model.lazy ¼öÁ¤ÀÚ
_2.9 v-bind¸¦ ÅëÇÑ ¹ÝÀÀÇü µ¥ÀÌÅÍ ¹ÙÀεù ¹× Props µ¥ÀÌÅÍ Àü´Þ
_2.10 Ŭ·¡½º ¹× ½ºÅ¸ÀÏ ¼Ó¼º ¹ÙÀεù
_2.11 v-for¸¦ ÀÌ¿ëÇÑ µ¥ÀÌÅÍ Ä÷º¼Ç ¼øȸ
_2.12 v-onÀ» ÀÌ¿ëÇÑ À̺¥Æ® ¸®½º³Ê Ãß°¡
_2.13 v-if, v-else, v-else-if¸¦ ÀÌ¿ëÇÑ Á¶°ÇºÎ ·»´õ¸µ
_2.14 v-show¸¦ ÀÌ¿ëÇÑ Á¶°ÇºÎ Ç¥½Ã
_2.15 v-htmlÀ» ÀÌ¿ëÇÑ µ¿Àû HTML ÄÚµå Ç¥½Ã
_2.16 v-text¸¦ ÀÌ¿ëÇÑ ÅؽºÆ® ÄÜÅÙÃ÷ Ç¥½Ã
_2.17 v-once ¹× v-memo¸¦ ÀÌ¿ëÇÑ ·»´õ¸µ ÃÖÀûÈ­
_2.18 Àü¿ª ÄÄÆ÷³ÍÆ® µî·Ï
Á¤¸®

CHAPTER 3 ÄÄÆ÷³ÍÆ® ±¸¼º

3.1 Vue ½Ì±Û ÆÄÀÏ ÄÄÆ÷³ÍÆ® ±¸Á¶
3.2 defineComponent()¿Í ŸÀÔ½ºÅ©¸³Æ® Áö¿ø
3.3 ÄÄÆ÷³ÍÆ® ¶óÀÌÇÁ»çÀÌŬ ÈÅ
3.4 ¸Þ¼­µå
3.5 computed ÇÁ·ÎÆÛƼ
3.6 ¿Íó
3.7 ½½·Ô
3.8 ÅÛÇø´°ú v-slotÀ¸·Î ¸í¸íµÈ ½½·Ô
3.9 refÀÇ ÀÌÇØ
3.10 ¹Í½ºÀΰú ÄÄÆ÷³ÍÆ® ¼³Á¤ °øÀ¯
3.11 ÄÄÆ÷³ÍÆ® ½ºÅ¸ÀÏ°ú Àû¿ë ¹üÀ§
3.12 CSS ¸ðµâ°ú ÄÄÆ÷³ÍÆ® ½ºÅ¸ÀÏ
Á¤¸®

CHAPTER 4 ÄÄÆ÷³ÍÆ® »óÈ£ÀÛ¿ë

_4.1 ÀÚ½Ä ÄÄÆ÷³ÍÆ®ÀÇ µ¥ÀÌÅÍ È帧
_4.2 Ä¿½ºÅÒ À̺¥Æ®¿Í ÄÄÆ÷³ÍÆ® °£ Åë½Å
_4.3 defineEmits()¸¦ ÀÌ¿ëÇÑ Ä¿½ºÅÒ À̺¥Æ® Á¤ÀÇ
_4.4 Á¦°ø/ÁÖÀÔ ÆÐÅÏÀ» ÀÌ¿ëÇÑ ÄÄÆ÷³ÍÆ® Åë½Å
_4.5 ÅÚ·¹Æ÷Æ® API
Á¤¸®

CHAPTER 5 ÄÄÆ÷Áö¼Ç API

_5.1 ÄÄÆ÷Áö¼Ç API¸¦ ÅëÇÑ ÄÄÆ÷³ÍÆ® ¼³Á¤
_5.2 ref()¿Í reactive()·Î µ¥ÀÌÅÍ Ã³¸®Çϱâ
_5.3 ¶óÀÌÇÁ»çÀÌŬ ÈÅ
_5.4 ÄÄÆ÷Áö¼Ç APIÀÇ ¿Íó
_5.5 computed()
_5.6 Àç»ç¿ë ÄÄÆ÷Àúºí
Á¤¸®

CHAPTER 6 ¿ÜºÎ µ¥ÀÌÅÍ ÅëÇÕ

_6.1 Axios¶õ?
_6.2 Axios ¼³Ä¡
_6.3 ¶óÀÌÇÁ»çÀÌŬ ÈÅ°ú Axios·Î µ¥ÀÌÅÍ °¡Á®¿À±â
_6.4 ·±Å¸ÀÓ Áß ºñµ¿±â µ¥ÀÌÅÍ ¿äû
_6.5 Àç»ç¿ë fetch ÄÄÆ÷³ÍÆ® »ý¼º
_6.6 ¾ÖÇø®ÄÉÀ̼ǰú ¿ÜºÎ µ¥ÀÌÅͺ£À̽º ¿¬°á
Á¤¸®

CHAPTER 7 °í±Þ ·»´õ¸µ, µ¿Àû ÄÄÆ÷³ÍÆ®, Ç÷¯±×ÀÎ ±¸¼º

_7.1 ·»´õ ÇÔ¼ö¿Í JSX
_7.2 ±â´É¼º ÄÄÆ÷³ÍÆ®
_7.3 ±â´É¼º ÄÄÆ÷³ÍÆ®ÀÇ props¿Í emits Á¤ÀÇ
_7.4 Vue Ç÷¯±×ÀÎÀ¸·Î Àü¿ª Ä¿½ºÅÒ ±â´É Ãß°¡Çϱâ
_7.5 ¡´component¡µ ű׸¦ ÀÌ¿ëÇÑ µ¿Àû ·»´õ¸µ
Á¤¸®

CHAPTER 8 ¶ó¿ìÆÃ

_8.1 ¶ó¿ìÆÃÀ̶õ?
_8.2 Vue ¶ó¿ìÅÍ
_8.3 ¶ó¿ìÆ® °£ µ¥ÀÌÅÍ Àü´Þ
_8.4 props·Î ¶ó¿ìÆ® ÆĶó¹ÌÅÍ ºÐ¸®Çϱâ
_8.5 ³»ºñ°ÔÀÌ¼Ç °¡µåÀÇ ÀÌÇØ
_8.6 Áßø ¶ó¿ìÆ®
_8.7 µ¿Àû ¶ó¿ìÆ® »ý¼º
_8.8 ¶ó¿ìÅÍ ÀνºÅϽº·Î ¾ÕµÚ À̵¿Çϱâ
_8.9 ¹ÌÈ®ÀÎ ¶ó¿ìÆ® ó¸®
Á¤¸®

CHAPTER 9 ÇÇ´Ï¾Æ¿Í »óÅ °ü¸®

_9.1 VueÀÇ »óÅ °ü¸®
_9.2 ÇǴϾÆ
_9.3 ÀúÀå¼Ò »ý¼º
_9.4 Àå¹Ù±¸´Ï ÀúÀå¼Ò »ý¼º
_9.5 ÄÄÆ÷³ÍÆ®¿¡¼­ Àå¹Ù±¸´Ï ÀúÀå¼Ò »ç¿ëÇϱâ
_9.6 ÇÇÀÚ °¶·¯¸®¿¡ Àå¹Ù±¸´Ï ±â´É Ãß°¡Çϱâ
_9.7 ¾×¼ÇÀ¸·Î Àå¹Ù±¸´Ï ¸ñ·Ï Ç¥½ÃÇϱâ
_9.8 Àå¹Ù±¸´Ï ÀúÀå¼Ò¿¡¼­ Ç׸ñ Á¦°ÅÇϱâ
_9.9 ÇÇ´Ï¾Æ ÀúÀå¼Ò À¯´Ö Å×½ºÆ®
_9.10 ÀúÀå¼Ò º¯°æ »çÇ× Ã³¸®Çϱâ
Á¤¸®

CHAPTER 10 Vue Æ®·£Áö¼Ç°ú ¾Ö´Ï¸ÞÀ̼Ç

_10.1 CSS Æ®·£Áö¼Ç ¹× ¾Ö´Ï¸ÞÀ̼Ç
_10.2 Vue.jsÀÇ Æ®·£Áö¼Ç ÄÄÆ÷³ÍÆ®
_10.3 ¿¤¸®¸ÕÆ® ±×·ì Æ®·£Áö¼Ç
_10.4 ¶ó¿ìÆ® Æ®·£Áö¼Ç
_10.5 Æ®·£Áö¼Ç À̺¥Æ®·Î ¾Ö´Ï¸ÞÀÌ¼Ç Á¦¾îÇϱâ
Á¤¸®

CHAPTER 11 Vue Å×½ºÆ®

_11.1 À¯´Ö Å×½ºÆ®¿Í E2E Å×½ºÆ®
_11.2 Vitest¿Í À¯´Ö Å×½ºÆ®
_11.3 Vitest ÆĶó¹ÌÅÍ¿Í ¼³Á¤ ÆÄÀÏ
_11.4 Å×½ºÆ® ÀÛ¼º
_11.5 ºñ-¶óÀÌÇÁ»çÀÌŬ ÄÄÆ÷Àúºí Å×½ºÆ®
_11.6 ¶óÀÌÇÁ»çÀÌŬ ÈÅ ÄÄÆ÷Àúºí Å×½ºÆ®
_11.7 Vue Å×½ºÆ® À¯Æ¿·Î ÄÄÆ÷³ÍÆ® Å×½ºÆ®Çϱâ
_11.8 ÄÄÆ÷³ÍÆ® »óÈ£ÀÛ¿ë ¹× À̺¥Æ® Å×½ºÆ®
_11.9 Vitest¿Í GUI
_11.10 Vitest¿Í Ä¿¹ö¸®Áö ·¯³Ê
_11.11 PlaywrightJS¸¦ ÀÌ¿ëÇÑ ¿£µåÅõ¿£µå Å×½ºÆ®
Á¤¸®

CHAPTER 12 Vue.js ¾ÖÇø®ÄÉÀ̼ǰú CI/CD

_12.1 ¼ÒÇÁÆ®¿þ¾î °³¹ß°ú CI/CD
_12.2 GitHub Actions¿Í CI/CD ÆÄÀÌÇÁ¶óÀÎ
_12.3 Netlify¸¦ ÀÌ¿ëÇÑ Áö¼ÓÀû ¹èÆ÷
_12.4 Netlify CLI ¹èÆ÷
Á¤¸®

CHAPTER 13 Vue¿Í ¼­¹ö »çÀÌµå ·»´õ¸µ

_13.1 VueÀÇ Å¬¶óÀ̾ðÆ® »çÀÌµå ·»´õ¸µ
_13.2 ¼­¹ö »çÀÌµå ·»´õ¸µ
_13.3 Nuxt.js¿Í ¼­¹ö »çÀÌµå ·»´õ¸µ
_13.4 Á¤Àû »çÀÌÆ® »ý¼º±â
Á¤¸®