title: vue基礎(chǔ)復習-課時01
date: 2018-04-30
目錄
安裝
<!-- 生產(chǎn)環(huán)境版本取刃,優(yōu)化了尺寸和速度 -->
<script src="https://cdn.jsdelivr.net/npm/vue"></script>
<!-- 開發(fā)環(huán)境版本,包含了用幫助的命令行警告 -->
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
渲染-聲明式
<div id="app">
{{ message }}
</div>
var app = new Vue({
el: '#app',
data: {
message: 'Hello Vue!'
}
})
文本插值
<div id="app">
{{ message }}
</div>
元素屬性
<span v-bind:title="message">
鼠標懸停幾秒鐘查看此處動態(tài)綁定的提示信息!
</span>
條件指令
<p v-if="seen">現(xiàn)在你看到我了</p>
循環(huán)指令
<ol>
<li v-for="todo in todos">
{{ todo.text }}
</li>
</ol>
data: {
todos: [
{ text: '學習 JavaScript' },
{ text: '學習 Vue' },
{ text: '整個牛項目' }
]
}
事件監(jiān)聽
<button v-on:click="reverseMessage">逆轉(zhuǎn)消息</button>
data: {
message: 'Hello Vue.js!'
},
methods: {
reverseMessage: function () {
this.message = this.message.split('').reverse().join('')
}
}
雙向綁定
<input v-model="message">
組件應(yīng)用
定義
Vue.component('todo-item', {
// todo-item 組件現(xiàn)在接受一個
// "prop",類似于一個自定義特性(todo-item擁有的屬性)。
// 這個 prop 名為 todo驹沿。
props: ['todo'],
template: '<li>{{ todo.text }}</li>'
});
使用
<ol>
<todo-item
v-for="item in groceryList"
v-bind:todo="item"
v-bind:key="item.id">
</todo-item>
</ol>
渲染
var app7 = new Vue({
el: '#app-7',
data: {
groceryList: [
{ id: 0, text: '蔬菜' },
{ id: 1, text: '奶酪' },
{ id: 2, text: '隨便其它什么人吃的東西' }
]
}
})