728x90
๋ฐ์ํ
๐ก ์ค์ต ํฌ์ธํธ!
๐ Vue ์ ๋ฐ์ดํฐ๋ฐ์ธ๋ฉ ๋ฌธ๋ฒ ์์๋ณด๊ธฐ
document.getElementById('ํ๊ทธ_ํน์_ํด๋์ค_ํน์_์์ด๋').innerHTML = ๋ฐ์ดํฐ;
- JavaScript ์์ ๋ณ์๋ ๋ฐ์ดํฐ๋ฅผ HTML ์ ๋ฐ์ดํฐ๋ฐ์ธ๋ฉํ๊ธฐ ์ํด์๋ ์์ ๊ฐ์ด ๊ธธ๊ฒ ํ์ค์ ์จ์ผ ๊ฐ๋ฅํ๋ค.
- ๋ฐ๋ฉด Vue ์์ ๋ฐ์ดํฐ๋ฐ์ธ๋ฉ์ ํ๊ธฐ ์ํด์๋ ๋ค์๊ณผ ๊ฐ์ด ์งํํ๋ฉด ๋๋ค.
- ํ์ผ ๋ด ํน์ ์์น์ ๋ฐ์ดํฐ๋ฅผ ๋ณด๊ดํ๋ค.
- ๋ณด๊ดํ ๋ฐ์ดํฐ๋ฅผ {{ ๋ฐ์ดํฐ }} ์ ๊ฐ์ ๋ฌธ๋ฒ์ผ๋ก HTML ์ค๊ฐ์ ๋ด์ฉ์ผ๋ก ๋ฃ์ด์ค๋ค.
๐ค HTML ์์ฑํ๊ธฐ
<template>
<div>
<h4>OO ์๋ฃธ</h4>
<p>OO๋ง์</p>
</div>
<div>
<h4>OO ์๋ฃธ</h4>
<p>OO๋ง์</p>
</div>
<div>
<h4>OO ์๋ฃธ</h4>
<p>OO๋ง์</p>
</div>
</template>
- ๋ชจ๋ HTML ์ฝ๋๋ ์์ ๊ฐ์ด <template></template> ์ ์์ฑํด์ฃผ๋ฉด ๋๋ค.
- ์ด์ธ์ JavaScript ๊ธฐ๋ฅ์ <script></script> ์ ์์ฑํ๊ณ , style ์ <style></style> ์ ์์ฑํ๋ฉด ๋๋ค.
๐ค ๋ฐ์ดํฐ ๋ณด๊ดํ๊ธฐ
<script>
export default {
name: "App",
data(){
return {
price1 : 55,
price2 : 43,
price3 : 38,
}
},
components: {},
};
</script>
- ๋ฐ์ดํฐ๋ <script></script> ์ฌ์ด์ data(){ return { } } ์ ์ถ๊ฐํ ํ object ํ์์ผ๋ก ์ ์ฅํ๋ฉด ๋๋ค.
- ์ด๋ฅผ Vue ์ data ๋ณด๊ดํจ, ๋ณ์ ๋ณด๊ดํจ์ด๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ฉฐ, ์ค์ํ ๋ฐ์ดํฐ๋ object ํ์์ ๋ง์ถฐ์ ๋ชจ๋ ์ฌ๊ธฐ์ ๋ณด๊ดํ๋ค.
๐ค ๋ณด๊ดํ ๋ฐ์ดํฐ๋ฅผ HTML ์ ์ฝ์ ํ๊ธฐ
<p>{{ price1 }}๋ง์</p>
- ์์ ์ฝ๋์ ๊ฐ์ด ๋ณด๊ดํ ๋ฐ์ดํฐ๋ HTML ์ ๋ด์ฉ์ผ๋ก ์ฝ์ ํ ๋ ์ค๊ดํธ ๋ ๊ฐ ์์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅํ๋ฉด ๋ฐ์ดํฐ์ ์ ์ฅ๋ ๊ฐ์ด ์ ๋ ฅ๋๋ค.
- ์ ์ฅํ๊ณ ๋๋ฉด ์ด์ ๋ธ๋ผ์ฐ์ ์์ ํ์ธํ๋ฉด 55๋ง์์ด๋ผ๊ณ ์ ๋จ๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
๐ ๋ฐ์ดํฐ๋ฐ์ธ๋ฉ์ ํ๋ ์ด์ ์์๋ณด๊ธฐ
- ์์ฃผ ๋ณ๋๋๋ ๋ฐ์ดํฐ๋ ํ๋์ฝ๋ฉ์ ํด๋๋ ๊ฒ๋ณด๋ค ๋ฐ์ดํฐ๋ก ์ ์ฅํด๋๋ ๊ฒ์ด ๋์ค์ JavaScript ๋ก ์กฐ์ํ์ฌ ์์ ํ๊ธฐ ํจ์ฌ ํธํ๊ธฐ ๋๋ฌธ์ด๋ค.
- Vue ์๋ data ๊ฐ ๋ณ๊ฒฝ๋๋ฉด data ์ ๊ด๋ จ๋ HTML ์ ๋ณ๊ฒฝ๋ ์ฌํญ์ด ์ค์๊ฐ์ผ๋ก ๋ฐ์์ด ๋๋ ์ค์๊ฐ ๋ ๋๋ง ๊ธฐ๋ฅ์ด ์๋๋ฐ, ์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ๊ธฐ ์ํด์๋ ๋ฐ์ดํฐ๋ฐ์ธ๋ฉ์ ํด์ผ ํ๋ค.
๐ HTML ์์ฑ ๋ฐ์ดํฐ๋ฐ์ธ๋ฉํ๊ธฐ
- Vue ๋ ํน์ดํ๊ฒ๋ html ์์ฑ๋ ๋ฐ์ดํฐ๋ฐ์ธ๋ฉ์ด ๊ฐ๋ฅํ๋ค.
- ์ฆ, style="", id="", class="" ์ด๋ฐ ๋ถ๋ถ์๋ data ๋ณด๊ดํจ์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ํ ์ ์๋ค๋ ๊ฒ์ด๋ค.
<p style="color: red">55๋ง์</p>
- ์ผ๋ฐ์ ์ผ๋ก html ํ๊ทธ์ ์ธ๋ผ์ธ ๋ฐฉ์์ผ๋ก ์คํ์ผ์ ์ ํ๋ style="color: red" ์ ๊ฐ์ ์ฝ๋๋ก ์์ฑํ๋ ๊ฒ์ด๋ค.
<script>
export default {
name: "App",
data(){
return {
blue : 'color : blue',
}
}
};
</script>
<h4 :style="blue">๋์ฐ๋ ์๋ฃธ</h4>
- ํ์ง๋ง data ๋ณด๊ดํจ์ blue : 'color : blue' ์ ๊ฐ์ด key-value ์ ๊ฐ์ object ํ์์ผ๋ก ๋ฃ์ด์ค ํ, ํด๋น ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ ํ๊ทธ์ key ๊ฐ์ ๋ฃ์ด์ฃผ๋ฉด value ๊ฐ ์ ๋ ฅ๋๋ค.
- ์ด ๋ ์ฃผ์ํ ์ ์ ํ๊ทธ์ ์์ฑ๋ช (์ฌ๊ธฐ์๋ style) ์์ ์ฝ๋ก ( : ) ์ ๋ถ์ฌ์ผ ํ๋ค๋ ๊ฒ์ด๋ค.

- ์ด์ ์ ์ฅํ๋ฉด ๋ธ๋ผ์ฐ์ ์์ ์์ ๊ฐ์ด HTML ๋ด์ฉ์ style ์ด ์ ํ์ง ๊ฒ์ ํ์ธํ ์ ์๋ค.
728x90
๋ฐ์ํ
'[๊ฐ๋ฐ] Practice > Vue.js' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Vue.js] import / export ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฐ์ธ๋ฉํ๊ธฐ (0) | 2022.04.01 |
---|---|
[Vue.js] v-if ์ ๋ชจ๋ฌ์ฐฝ ๋ง๋ค๊ธฐ (0) | 2022.04.01 |
[Vue.js] Vue ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ก click ๊ฐ์งํ๊ธฐ (0) | 2022.04.01 |
[Vue.js] Vue ๋ฐ๋ณต๋ฌธ v-for ์ฌ์ฉํด๋ณด๊ธฐ (0) | 2022.03.31 |
[Vue.js] Vue ์ค์นํ๊ธฐ ๋ฐ ๊ฐ๋ฐํ๊ฒฝ ์ ํ ํ๊ธฐ (0) | 2022.03.31 |