一、v-for 的用法
循環指令,可以遍歷 Number、String、Object、Array;
- 循環數字、字符串:有2個參數,分別是value和索引值;
-
循環對象:有3個參數,分別是 屬性值、屬性名、索引值;
- 循環數組對象:有2個參數,分別是 對象和索引值;
-
索引值和屬性名可以省略不寫。
1 <h4>遍歷數字:</h4> 2 <div v-for="(value,idx) in forData1"> 3 <span>值{{value}} --- 索引值{{idx}}</span> 4 </div> 5 <h4>遍歷字符串:</h4> 6 <div v-for="(value,idx) in forData2"> 7 <span>值{{value}} --- 索引值{{idx}}</span> 8 </div> 9 <h4>遍歷對象:</h4> 10 <div v-for="(item,key,idx) in forData3"> 11 <span>屬性值{{item}} --- 屬性名{{key}} --- 索引值{{idx}}</span> 12 </div> 13 <h4>遍歷數組對象(嵌套循環):</h4> 14 <div v-for="(item,idx) in forData4" > 15 <span>對象{{item}} --- 索引值{{idx}}</span> 16 <div v-for="(i,key) in item"> 17 <span>{{i}}---{{key}}</span> 18 </div> 19 </div> 20 21 new Vue({ 22 el: '#app', 23 data: { 24 forData1:3, 25 forData2:'abcd', 26 forData3:{name:'xixi',age:18}, 27 forData4:[{name:'張飛',age:38},{name:'武松',age:48}] 28 } 29 })
運行結果: 
二、v-bind綁定class的幾種寫法
綁定屬性;
縮寫: v-bind:class=" " ---> :class=" "
1. 常見寫法
<div :class="classA"></div>
2. 數組語法
<div :class="[classA,classB]"></div>
3. 對象語法(綁定布爾值、屬性,當判斷條件比較復雜可以綁定方法)
<div :class="{'redFont':true,'blueBorder':ifhasBorder,'bigSize':changeSize()}"></div>
vue實例化配置:
<script src="./vue.js"></script>
<script>
var vm = new Vue({
el: '#app',
data: {
classA:'redFont',
classB:'blueBorder',
ifhasBorder:false
},
methods:{
changeSize:function(){
return false;
}
}
})
</script>
運行結果: 
三、簡單應用:tab標簽切換
結合 v-for 、v-bind 以及 v-show 指令,實現簡單的tab標簽和內容同步切換,(樣式引用bootstrap.css)。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<link rel="stylesheet" href="./bootstrap.css">
</head>
<body>
<div id="app">
<ul class="nav nav-tabs">
<li class="nav-item" v-for="(item,idx) in tabs">
<a :class="{'nav-link':true,active:idx===activeIndex}" href="#" @click="changeIdx(idx)">{{item}}</a>
</li>
</ul>
<div v-for="(item,idx) in contents">
<div v-show="idx===activeIndex" style="padding:10px;">{{item}}</div>
</div>
</div>
<script src="./vue.js"></script>
<script>
var vm = new Vue({
el: '#app',
data: {
tabs: ["水果", "玩具", "人名"],
contents: ['西瓜葡萄大蘋果', '積木拼圖小火車', '大雄小熊小小明'],
activeIndex:0
},
methods:{
changeIdx:function(idx){
this.activeIndex = idx;
}
}
})
</script>
</body>
</html>
運行結果: 
