Vuejs ์๊ฐ๐๐๐
5922 ๋จ์ด vuewebdevjavascriptbeginners
Vuejs๋ฅผ ์ฌ์ฉํ๊ฑฐ๋ ์ฌ์ ํ ํผ๋์ค๋ฝ์ต๋๊น?
์ค๋์ Vuejs์ ๋ํด ๊ฐ๋จํ ๋ฐฉ๋ฒ๊ณผ ์ฌ์ฉ๋ฒ์ ์ค๋ช ํ๊ธฐ ์ํด ์์ต๋๋ค.
๊ธด ๋จ๋ฝ์ ์ฝ๋ ๋์ ์ฝ๋๋ฅผ ์์ฑํ์ฌ ํ์ต์ ์์ํด ๋ณด๊ฒ ์ต๋๋ค.
์ด๋ฅผ ์ํด codepen์ ์ฌ์ฉํ๊ณ ์์ต๋๋ค.
๋จผ์ id ์ฑ์ผ๋ก div ํ๊ทธ๋ฅผ ์์ฑํ๋ ๊ฒ์ผ๋ก ์์ํ์ต๋๋ค.
<div id="app"></div>
์ด์ Vuejs ์ฝ๋๋ฅผ ์์ฑํด ๋ณด๊ฒ ์ต๋๋ค.
Vue๋ ๊ฐ์ฒด๋ฅผ ์ธ์๋ก ์ฌ์ฉํ๋ ์๋ก์ด Vue ์ธ์คํด์ค๋ฅผ ์ ๊ณตํฉ๋๋ค.
let app = new Vue({
el:'#app'
})
์์ ์ฝ๋๊ฐ ํ๋ ์ผ์ vue์ ์ํด ์ ์ด๋๋ div ์์ ๋ด๋ถ์ ์ฝ๋๋ฅผ ์์ฑํ๋ ๊ฒ์ ๋๋ค.
์ฒซ ๋ฒ์งธ ์์ฑ์ Vue๊ฐ ๋์์ผ๋ก ์ง์ ํด์ผ ํ๋ HTML ์ฝ๋์ ์์๋ฅผ ์๋ฏธํ๋ el์ ๋๋ค.
Data Property: Vue ๋ด๋ถ์ ์ํ๋ฅผ ๊ด๋ฆฌํฉ๋๋ค.
Methods ์์ฑ: ํจ์๋ฅผ ์ ์ํ ์ ์๋ ๊ณณ์ ๋๋ค.
์ด์ ๋ฐ์ดํฐ ์์ฑ๊ณผ ๋ฉ์๋๋ฅผ ์์ฑํด ๋ณด๊ฒ ์ต๋๋ค.
var app = new Vue({
el:'#app',
data:{
name:'Welcome to Vuejs',
show:true,
persons:['Gowtham','Aaron','Tonny']
},
methods:{
changeme(){
this.show = !this.show
}
}
})
data ๋ฐ methods ์์ฑ์ ๊ฐ์ฒด์ ๋๋ค.
๋ฐ์ดํฐ ์์ฑ์์ ์ผ๋ถ ์ ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ํ๊ณ ๋ฉ์๋ ์์ฑ์์ changeme ํจ์๋ฅผ ์ ์ธํ์ต๋๋ค.
์ด์ div ์์ ๋ด์์ ์ด๋ฌํ ์์ฑ์ ์ฌ์ฉํ๊ฒ ์ต๋๋ค.
<div id="app">
<h1 v-if="show">{{name}}</h1>
<ul v-for="person in persons" v-if="show">
<li>{{person}}</li>
</ul>
<button @click="changeme">
{{show ? 'Hide' : 'Show'}}
</button>
</div>
v-if ์ง์๋ฌธ์ ์ฌ์ฉํ์ฌ h1 ์์๋ฅผ ์ ์ํ์ต๋๋ค. ์ด๋ฏธ Vue ์ธ์คํด์ค์ ๋ฐ์ดํฐ ์์ฑ ๋ด๋ถ์ ์ ์๋ show ์์ฑ์ ์ฌ์ฉํ์ต๋๋ค.
v-if๊ฐ ํ๋ ์ผ์ ์ฃผ์ด์ง ์กฐ๊ฑด์ด ์ฐธ์ผ ๋๋ง dom์ ํ์๋๋ค๋ ๊ฒ์ ๋๋ค.
๋ ๋ฒ์งธ๋ก v-for ์ง์๋ฌธ๊ณผ ํจ๊ป ์์๊ฐ ์ง์ ๋์ง ์์ ๋ชฉ๋ก์ ์ฌ์ฉํ์ต๋๋ค.
v-for๋ Vue ์ธ์คํด์ค์ ๋ฐ์ดํฐ ์์ฑ ๋ด๋ถ์ ์ด๋ฏธ ์ ์๋ people ๋ฐฐ์ด์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ๋ฐฐ์ด์ ๋ฐ๋ณตํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
Vue๋ ๋ฐ์ดํฐ ๋ฐ์ธ๋ฉ ๊ตฌ๋ฌธ๊ณผ ๊ฐ์ ํ ํ๋ฆฟ์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ์ด์ค ์ค๊ดํธ๋ฅผ ์ฌ์ฉํ์ต๋๋ค.
๋ฒํผ ์์์ธ ๋ง์ง๋ง ๊ฒ์ ํด๋ฆญ ํธ๋ค๋ฌ๋ฅผ ๋ฑ๋กํ์ต๋๋ค.
์ด๋ฅผ ์ํด v-on:click์ ์ฝ์ด์ธ @click ์ง์๋ฌธ์ ์ฌ์ฉํ์ต๋๋ค.
๋น์ ์ ๊ทธ๋ค ์ค ํ๋๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ต์ข ์ถ๋ ฅ์
์์ ์ฑ์ด๋ ํฐ ์ฑ์์ Vue๋ฅผ ์ฌ์ฉํ๊ฑฐ๋ Vue๋ก ์์ ํ ๋จ์ผ ํ์ด์ง ์ฑ์ ๋ง๋ค ์ ์์ต๋๋ค.
์ฌ๋ฌ๋ถ์ด ์ด๊ฒ์ ์ข์ํ๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. Vuejs์ ๋ํด ๋ ์๊ณ ์ถ๋ค๋ฉด ๋ฌธ์๋ฅผ ํ์ธํ์ธ์.
์์
Vue Docs
Vue Directives
Event Handiling in vuejs
Reference
์ด ๋ฌธ์ ์ ๊ดํ์ฌ(Vuejs ์๊ฐ๐๐๐), ์ฐ๋ฆฌ๋ ์ด๊ณณ์์ ๋ ๋ง์ ์๋ฃ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ๋ณด์๋ค https://dev.to/sait/intro-to-the-vuejs-bmjํ ์คํธ๋ฅผ ์์ ๋กญ๊ฒ ๊ณต์ ํ๊ฑฐ๋ ๋ณต์ฌํ ์ ์์ต๋๋ค.ํ์ง๋ง ์ด ๋ฌธ์์ URL์ ์ฐธ์กฐ URL๋ก ๋จ๊ฒจ ๋์ญ์์ค.
์ฐ์ํ ๊ฐ๋ฐ์ ์ฝํ ์ธ ๋ฐ๊ฒฌ์ ์ ๋ (Collection and Share based on the CC Protocol.)
์ข์ ์นํ์ด์ง ์ฆ๊ฒจ์ฐพ๊ธฐ
๊ฐ๋ฐ์ ์ฐ์ ์ฌ์ดํธ ์์ง
๊ฐ๋ฐ์๊ฐ ์์์ผ ํ ํ์ ์ฌ์ดํธ 100์ ์ถ์ฒ ์ฐ๋ฆฌ๋ ๋น์ ์ ์ํด 100๊ฐ์ ์์ฃผ ์ฌ์ฉํ๋ ๊ฐ๋ฐ์ ํ์ต ์ฌ์ดํธ๋ฅผ ์ ๋ฆฌํ์ต๋๋ค