前言
本章讲解的是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文本框可以随着输入发生变化,后面两个则不能!
————————————————
智一面|前端技术练习题vue