Vue 2.0 Getting Started를 해보도록 하겠습니다.
13678 단어 JavaScriptVue.js
후기: 특별히 2.0을 겨냥한 내용은 아니다.2.0의 학습이 될 수 없다.
이번에는 jsFiddle을 사용합니다.JSFiddle Hello World example 이미 준비가 되어 있으며 로그인 후 왼쪽 상단에 있는 포크를 눌러 초기 형태로 사용합니다.
Declarative Rendering
우선 첫 번째 샘플입니다.<div id="app">
{{ message }}
</div>
var app = new Vue({
el: '#app',
data: {
message: 'Hello Vue!'
}
})
출력Hello Vue.js!
우선 기본.
<div id="app">
{{ message }}
</div>
var app = new Vue({
el: '#app',
data: {
message: 'Hello Vue!'
}
})
Hello Vue.js!
{{ message }}
에 Vue 객체의 데이터 표시(텍스트 노드에 데이터 바인딩)setInterval(function(){
app.message = new Date();
}, 1000);
Text Interpolation
다음은 DOM 요소 속성에 데이터를 바인딩하는 예입니다.도구 설명의 제목 속성을 메시지와 연결합니다.<div id="app-2">
<span v-bind:title="message">
Hover your mouse over me for a few seconds to see my dynamically bound title!
</span>
</div>
var app2 = new Vue({
el: '#app-2',
data: {
message: 'You loaded this page on ' + new Date()
}
})
마우스 전환을 클릭하면 다음과 같은 툴팁이 표시됩니다.
<div id="app-2">
<span v-bind:title="message">
Hover your mouse over me for a few seconds to see my dynamically bound title!
</span>
</div>
var app2 = new Vue({
el: '#app-2',
data: {
message: 'You loaded this page on ' + new Date()
}
})
Conditionals
조건문<div id="app-3">
<p v-if="seen">Now you see me</p>
</div>
var app3 = new Vue({
el: '#app-3',
data: {
seen: true
}
})
출력Now you see me
<div id="app-3">
<p v-if="seen">Now you see me</p>
</div>
var app3 = new Vue({
el: '#app-3',
data: {
seen: true
}
})
Now you see me
setInterval(function(){
app3.seen = !app3.seen;
}, 1000);
https://jsfiddle.net/kzqooq/625m413h/3/
Loop
이어서 순환이다.2.0달러 index가 폐지되는 등 방법이 바뀐 것 같지만, 이 샘플은 모르겠다.<div id="app-4">
<ol>
<li v-for="todo in todos">
{{ todo.text }}
</li>
</ol>
</div>
var app4 = new Vue({
el: '#app-4',
data: {
todos: [
{ text: 'Learn JavaScript' },
{ text: 'Learn Vue' },
{ text: 'Build something awesome' }
]
}
})
출력1. Learn JavaScript
2. Learn Vue
3. Build something awesome
<div id="app-4">
<ol>
<li v-for="todo in todos">
{{ todo.text }}
</li>
</ol>
</div>
var app4 = new Vue({
el: '#app-4',
data: {
todos: [
{ text: 'Learn JavaScript' },
{ text: 'Learn Vue' },
{ text: 'Build something awesome' }
]
}
})
1. Learn JavaScript
2. Learn Vue
3. Build something awesome
setInterval(function(){
i += 1;
app4.todos.push({ text: "New " + i });
}, 1000);
Handling User Input
Input 이벤트 및 Vue 객체 메서드의 바인딩입니다.<div id="app-5">
<p>{{ message }}</p>
<button v-on:click="reverseMessage">
Reverse Message
</button>
</div>
var app5 = new Vue({
el: '#app-5',
data: {
message: 'Hello Vue.js!'
},
methods: {
reverseMessage: function () {
this.message = this.message.split('').reverse().join('')
}
}
})
클릭하기 전
클릭 후(reverseMessage 실행)
<div id="app-5">
<p>{{ message }}</p>
<button v-on:click="reverseMessage">
Reverse Message
</button>
</div>
var app5 = new Vue({
el: '#app-5',
data: {
message: 'Hello Vue.js!'
},
methods: {
reverseMessage: function () {
this.message = this.message.split('').reverse().join('')
}
}
})
Two-way binding
Vue 객체의 데이터와 Input 값을 두 방향으로 바인딩합니다.Input 값을 변경하면 데이터도 변경됩니다.<div id="app-6">
<p>{{ message }}</p>
<input v-model="message">
</div>
var app6 = new Vue({
el: '#app-6',
data: {
message: 'Hello Vue!'
}
})
입력 값에 따라 데이터 변경
<div id="app-6">
<p>{{ message }}</p>
<input v-model="message">
</div>
var app6 = new Vue({
el: '#app-6',
data: {
message: 'Hello Vue!'
}
})
Component
구성 요소간단히 말해 새로운 HTML 태그를 직접 만들 수 있습니다.
todo-item 탭의 정의Vue.component('todo-item', {
props: ['todo'],
template: '<li>{{ todo.text }}</li>'
});
Vue.component('todo-item', {
props: ['todo'],
template: '<li>{{ todo.text }}</li>'
});
<div id="app-7">
<ol>
<todo-item v-for="todo in todos" v-bind:todo="todo"></todo-item>
</ol>
</div>
var app7 = new Vue({
el: '#app-7',
data: {
todos: [
{ text: 'Learn JavaScript' },
{ text: 'Learn Vue' },
{ text: 'Build something awesome' }
]
}
})
Reference
이 문제에 관하여(Vue 2.0 Getting Started를 해보도록 하겠습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kazusa-qooq/items/84caa0e6874231a8094d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)