前言

      本章讲解的是Vue指令中关于列表循环和表单元素绑定的内容

方法

1.列表循环之v-for

该指令表示根据数据生成列表结构

应用实例:

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<script src="js/vue.js"></script>

<title>Vue指令</title>

</head>

<body>

<div id="app">

   <ul>

<!-- 循环普通的数组对象:对象 in 对象集合 -->

    <li v-for="item in arr">{{item}}</li>

<!-- 循环中加入索引index -->

<li v-for="(index,item) in arr">{{index}}、{{item}}</li>

<!-- 循环复杂对象 -->

<li v-for="item in objs">{{item.name}}:{{item.age}}</li>

   </ul>

</div>

<script>

var app = new Vue({

  el: '#app',

  data: {

    arr:[1,2,3,4,5],

objs:[{"name":"张三","age":24},{"name":"李四","age":26}]

  }

})

</script>

</body>

</html>

 

页面显示效果如下:
 
 
可以发现,我们成功的循环了我们的数组。当数组的元素动态发生改变的时候,页面的显示也会跟着改变。
 
2.表单元素绑定之v-model
在之前我们学习过如v-text,v-bind指令都是属于单向的绑定,即vue中的数据发生变化的时候同步的在页面进行显示,但是页面中的数据变化却不能应用到vue的数据中,我们可以使用v-model实现双向绑定。
 
应用实例:
<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<script src="js/vue.js"></script>

<title>Vue指令</title>

</head>

<body>

<div id="app">

<!-- v-model使得数据双向绑定,改变任何一边,数据都会变化 -->

   <input type="text" v-model="message1"/><br/>

   <input type="text" v-model="message1"/><br/>

   <!-- 对比v-bind指令我们可以发现不同点 -->

   <input type="text" :value="message2"/><br/>

   <input type="text" :value="message2"/><br/>

</div>

<script>

var app = new Vue({

  el: '#app',

  data: {

    message1: 'Hello Vue!',

message2: 'Hello Vue!'

  },

  methods:{

 

  }

})

</script>

</body>

</html>
程序执行效果如下,前两个text文本框可以随着输入发生变化,后面两个则不能!
————————————————