多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
[toc] ### 1. 迭代数组 ``` <ul id="app"> <li v-for="(item, i) in list">索引:{{i}}--姓名:{{item.name}}--年龄:{{item.age}}</li> </ul> ``` js代码: ``` var vm = new Vue({ el: '#app', data: { list: [ {name: "xu",age: 18}, {name: "xx", age: 19}, {name: "chen", age: 20} ] } }) ``` ### 2. 迭代对象中的属性 ``` <li v-for="(val, key, i) in list">val: {{val}}, key: {{key}}, index: {{i}}</li> ``` data数据 ``` data: { // list: [ // {name: "xu",age: 18}, // {name: "xx", age: 19}, // {name: "chen", age: 20} // ] list: { id: 0, name: "xu", age: 22 } } ``` 输出效果: ``` val: 0, key: id, index: 0 val: xu, key: name, index: 1 val: 22, key: age, index: 2 ``` ### 3. 迭代数字 ``` <li v-for="i in 10">{{i}}</li> ``` 从1开始迭代 ### 4. 注意 >2.20+版本里,当在在组件中使用`v-for`时,key现在是必须的 当Vue.js用v-for正在更新已渲染过的元素列表时,它默认用“就地复用”策略。如果数据项的顺序被改变,Vue将不是移动DOM元素来匹配数据项的顺序,而是简单复用此处某个元素,并且确保它在待定索引下显示已被渲染过的每个元素。 为了给Vue一个提示,一边它能跟踪每个节点的身份,从而重用和重新排序现有元素,你需要为每项提供一个唯一key属性 1. 在组件中,使用v-for循环的时候,或者在一些特殊情况时,如果v-for有问题,必须在使用v-for的同时,指定唯一的 字符串/数字 类型:key值 2. key在使用的时候,必须使用v-bind属性绑定的形式,指定key的值 3. v-for循环的时候,key属性只能使用number获取string,不能用item