Recent Posts
Recent Comments
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Today
Total
관리 메뉴

고리타분한 개발자

[Vue JS] Basic Data Binding 본문

Vue JS/Step By Step

[Vue JS] Basic Data Binding

sunlee334 2017. 11. 30. 08:04

개요

안녕하세요!!! 항상 angularJS를 사용해오다가 directive의 심한 학습곡선과 개발된지 오래된 framework인 만큼 버전 업그레이드도 더디고 있긴있나...? 아무쪼록 무언가 새로운 것을 공부 해보려는 찰나에 Angular, React, Vue 중에서 VueJS가 그나마 쉽고 공식 홈페이지도 이쁘게 잘 되어있어서 google의 지원을 받는 angular와 facebook의 react를 과감히 포기하고 선택하게 되었습니다. ㅎㅎ. 아무튼, vue api를 쭉 한번 보고 vuex와 nuxt를 진행하기전에 데이터 바인딩부터 시작해서 리스팅, 이벤트 리스너, 필터등을 복습해보고자 합니다. 간략하고 빠르게.

JS vs Vue JS

여러분들은 자바스크립트에서 querySelector를 가지고 data binding을 해본적이 있으신가요. 코드는 아래와 같습니다.

<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<title></title>
</head>

<body>
<input type="text" id="input">
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.9/vue.js"></script>
<script>
let data = {
message: 'Hello World!'
}

document.querySelector('#input').value = data.message;
</script>
</body>

</html>

당연히 결과값는 아래처럼 나오겠죠?


자, 그럼 이제 vue를 사용하여 데이터 바인딩을 해볼 차례입니다.

<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<title></title>
</head>

<body>
<div id="root">

<input type="text" id="input" v-model="message">

<p>The value of the input is : {{message}}.</p>

</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.9/vue.js"></script>
<script>
new Vue({
el: '#root',
data: {
message: 'Hello World!'
}
})
</script>
</body>

</html>


코드를 보면 Vue 안의 el 부분과 div의 id값을 이어주고, v-model 옵션을 이용하여 message를 바인딩 해준것을 확인해 볼 수 있습니다. 

결과값은 다음과 같습니다. 입력창 안에 원하는 값을 입력하여 바인딩이 잘 되어있는지 확인해보세요.

The value of the input is : {{message}}.

'Vue JS > Step By Step' 카테고리의 다른 글

[Vue JS] The Need for Computed Properties  (0) 2017.12.04
[Vue JS] Attribute and Class Binding  (0) 2017.12.04
[Vue JS] Vue Event Listeners  (0) 2017.12.04
[Vue JS] Lists  (0) 2017.11.30
[Vue JS] Vue Devtools  (0) 2017.11.30
Comments