โญ Personal_Study97 Emit Event Emit Event Emit Event ๊ฐ์ โ ๋ถ๋ชจ ์ปดํฌ๋ํธ์์ ์์ ์ปดํฌ๋ํธ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ ๋๋ ์ด๋ฒคํธ๋ฅผ ๋ฐ์ ์ํจ๋ค. ๋ฐ์ดํฐ๋ฅผ ์ด๋ฒคํธ ๋ฆฌ์คํฐ์ ์ฝ๋ฐฑํจ์ ์ธ์๋ก ์ ๋ฌ ์์ ์ปดํฌ๋ํธ๋ ํด๋น ์ด๋ฒคํธ๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ Emit Event ๊ธฐ์ด ... ํด๋ฆญ! This is my Component ํ๋ฆ ์ ๋ฆฌ ์์ ์ปดํฌ๋ํธ์ ์๋ ๋ฒํผ ํด๋ฆญ ์ด๋ฒคํธ๋ฅผ ์ฒญ์ทจํ์ฌ ์ฐ๊ฒฐ๋ ํธ๋ค๋ฌ ํจ์(childToParent) ํธ์ถ ํธ์ถ๋ ํจ์์์ $emit์ ํตํด ์์ ์ปดํฌ๋ํธ์ ์ด๋ฒคํธ(child-to-parent) ๋ฐ์ ์์ ์ปดํฌ๋ํธ๋ ์์ ์ปดํฌ๋ํธ๊ฐ ๋ฐ์์ํจ ์ด๋ฒคํธ(child-to-parent)๋ฅผ ์ฒญ์ทจํ์ฌ ์ฐ๊ฒฐ๋ ํธ๋ค๋ฌ ํจ์(parentGetEvent) ํธ์ถ Emit with Data ... ํด๋ฆญ! โ ์ด๋ฒคํธ๋ฅผ ๋ฐ์(em.. 2022. 11. 13. Pass Props Pass Props Data in components Data in components ๊ฐ์ โ ์์ ํ ๋์ผํ data๋ฅผ ์๋ก ๋ค๋ฅธ Component์์ ๋ณด์ฌ์ฃผ๋ ๋ฐฉ๋ฒ?! โ ์ปดํฌ๋ํธ๋ ๋ถ๋ชจ-์์ ๊ด๊ณ๋ฅผ ๊ฐ์ง๊ณ ์์ผ๋ฏ๋ก, ๋ถ๋ชจ-์์ ๊ด๊ณ๋ง ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๊ฒ ์ค์ ! โ ๋ฐ์ดํฐ ํ๋ฆ ํ์ ์ฉ์ด โ ์ ์ง ๋ณด์ ์ฉ์ด pass props & emit event โ ๋ถ๋ชจ -> ์์์ผ๋ก์ ๋ฐ์ดํฐ ํ๋ฆ pass props โ ์์ -> ๋ถ๋ชจ๋ก์ ๋ฐ์ดํฐ ํ๋ฆ emit event Pass Props ๊ฐ์ โ ์์์ ์์ฑ(property)๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ ์ ๋ฌ โ props๋ ๋ถ๋ชจ(์์) ์ปดํฌ๋ํธ์ ์ ๋ณด๋ฅผ ์ ๋ฌํ๊ธฐ ์ํ ์ฌ์ฉ์ ์ง์ ํน์ฑ โ ์์(ํ์) ์ปดํฌ๋ํธ๋ porps ์ต์ ์ ์ฌ์ฉํ์ฌ ์์ ํ๋ props๋ฅผ ๋ช ์์ ์ผ.. 2022. 11. 12. Vue Component Vue Component Vue Component ๊ตฌ์กฐ โ ํ ํ๋ฆฟ(HTML) HTML์ body ๋ถ๋ถ ๋์ผ๋ก ๋ณด์ฌ์ง๋ ์์ ์์ฑ ๋ค๋ฅธ ์ปดํฌ๋ํธ๋ฅผ html์์ ์ฒ๋ผ ์ถ๊ฐ ๊ฐ๋ฅ โ ์คํฌ๋ฆฝํธ(JavaScript) JavaScript ์ฝ๋๊ฐ ์์ฑ๋๋ ๊ณณ ์ปดํฌ๋ํธ ์ ๋ณด, ๋ฐ์ดํฐ, ๋ฉ์๋ ๋ฑ vue ์ธ์คํด์ค๋ฅผ ๊ตฌ์ฑํ๋ ๋๋ถ๋ถ์ด ์์ฑ๋๋ค. โ ์คํ์ผ(CSS) CSS๊ฐ ์์ฑ๋๋ฉฐ ์ปดํฌ๋ํธ์ ์คํ์ผ์ ๋ด๋น ๊ตฌ์กฐ ์ ๋ฆฌ โ ์ปดํฌ๋ํธ๋ค์ด tree ๊ตฌ์กฐ๋ฅผ ์ด๋ฃจ์ด ํ๋์ ํ์ด์ง๋ฅผ ๋ง๋ ๋ค. โ root์ ํด๋นํ๋ ์ต์๋จ์ component๊ฐ App.vue โ ์ด App.vue๋ฅผ index.html๊ณผ ์ฐ๊ฒฐ โ ํ๋์ ํ์ด์ง๋ง๋ค rendering -> SPA Vue component ์ค์ต MyComponentj.vue // MyComp.. 2022. 11. 11. SFC (Single File Component) SFC Component Component ๊ฐ์ โ UI๋ฅผ ๋ ๋ฆฝ์ ์ด๊ณ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ์กฐ๊ฐ๋ค๋ก ๋๋ ๊ฒ ์ฆ ๊ธฐ๋ฅ๋ณ๋ก ๋ถํํ ์ฝ๋ ์กฐ๊ฐ โ CS์์๋ ๋ค์ ์ฌ์ฉํ ์ ์๋ ๋ฒ์ฉ์ฑ์ ์ํด ๊ฐ๋ฐ๋ ์ํํธ์จ์ด ๊ตฌ์ฑ ์์๋ฅผ ์๋ฏธ โ ํ๋์ app์ ๊ตฌ์ฑํ ๋ ์ค์ฒฉ๋ ์ปดํฌ๋ํธ๋ค์ tree๋ฅผ ๊ตฌ์ฑํ๋ ๊ฒ์ด ๋ณดํธ์ ! โ ์ ์ง๋ณด์๋ฅผ ์ฉ์ด, ์ฌ์ฌ์ฉ์ฑ ํฅ์ Component based architecture์ ํน์ง โ ๊ด๋ฆฌ ์ฉ์ด โ ์ฌ์ฌ์ฉ์ฑ โ ํ์ฅ ๊ฐ๋ฅ โ ์บก์ํ โ ๋ ๋ฆฝ์ Component in Vue โ ์ด๋ฆ์ด ์๋ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ Vue instance โ new Vue() SFC(Single File Component) โ ํ๋์ .vueํ์ผ์ด ํ๋์ Vue instace์ด๊ณ , ํ๋์ ์ปดํฌ๋ํธ! โ Vue instan.. 2022. 11. 11. Vue_CLI Vue CLI Node.js โ ์๋ฐ์คํฌ๋ฆฝํธ๋ ๋ธ๋ผ์ฐ์ ๋ฅผ ์กฐ์ํ๋ ์ ์ผํ ์ธ์ด -> ๋ธ๋ผ์ฐ์ ๋ฐ์์๋ ๊ตฌ๋ํ ์ ์์๋ค! โ ๋ธ๋ผ์ฐ์ ๊ฐ ์๋ ํ๊ฒฝ์์๋ ๊ตฌ๋ํ ์ ์๋๋ก ํ๋ ๋ฐํ์ ํ๊ฒฝ NPM (Node Package Manage) โ ์๋ฐ์คํฌ๋ฆฝํธ ํจํค์ง ๊ด๋ฆฌ์ Vue CLI ๊ฐ์ โ Vue ๊ฐ๋ฐ์ ์ํ ํ์ค ๋๊ตฌ โ ํ๋ก์ ํธ์ ๊ตฌ์ฑ์ ๋์์ฃผ๋ ์ญํ โ ํ์ฅ ํ๋ฌ๊ทธ์ธ, GUI, Bable ๋ฑ ๋ค์ํ ํด ์ ๊ณต Vue CLI ์์ํ๊ธฐ ์ค์น $npm install -g @vue/cli ํ๋ก์ ํธ ์์ฑ $vue create ํ๋ฆฌ์ ์ค์ ๋๋ ํ ๋ฆฌ ์ด๋ cd ์๋ฒ ๊ฐ๋ npm run serve Vue CLI ํ๋ก์ ํธ ๊ตฌ์กฐ node_modules โ node.js ํ๊ฒฝ์ ์ฌ๋ฌ ์์กด์ฑ ๋ชจ๋ โ python์ venv์.. 2022. 11. 9. Vue: advanced attributes Vue Advanced Computed โ Vue instance ๊ฐ ๊ฐ์ง option ์ค ํ๋ โ computed ๊ฐ์ฒด์ ์ ์๋ ํจ์๋ฅผ ํ์ด์ง๊ฐ ์ต์ด๋ก ๋ ๋๋ง ๋ ๋ ํธ์ถํ์ฌ ๊ณ์ฐ ๊ณ์ฐ ๊ฒฐ๊ณผ๊ฐ ๋ณํ๊ธฐ ์ ๊น์ง ํจ์๋ฅผ ์ฌํธ์ถ ํ๋ ๊ฒ์ด ์๋ ๊ณ์ฐ๋ ๊ฐ์ ๋ฐํ method vs computed data_01 : {{ number1 }} data_02 : {{ number2 }} add_method : {{ add_method() }} add_method : {{ add_method() }} add_method : {{ add_method() }} add_computed : {{ add_computed }} add_computed : {{ add_computed }} add_computed : {{ add_c.. 2022. 11. 7. ์ด์ 1 ยทยทยท 7 8 9 10 11 12 13 ยทยทยท 17 ๋ค์