Vue.js:循环语句

China☆狼群 提交于 2019-12-27 02:30:18
ylbtech-Vue.js:循环语句

 

1.返回顶部
1、

循环语句

循环使用 v-for 指令

v-for 指令需要以 site in sites 形式的特殊语法sites 是源数据数组并且 site 是数组元素迭代的别名

v-for 可以绑定数据到数组来渲染一个列表

v-for 指令

<div id="app">
  <ol>
    <li v-for="site in sites">
      {{ site.name }}
    </li>
  </ol>
</div>
 
<script>
new Vue({
  el: '#app',
  data: {
    sites: [
      { name: 'Runoob' },
      { name: 'Google' },
      { name: 'Taobao' }
    ]
  }
})
</script>

 尝试一下 »

模板中使用 v-for:

v-for

<ul>
  <template v-for="site in sites">
    <li>{{ site.name }}</li>
    <li>--------------</li>
  </template>
</ul>

 尝试一下 »

v-for 迭代对象

v-for 可以通过一个对象的属性来迭代数据

v-for

<div id="app">
  <ul>
    <li v-for="value in object">
    {{ value }}
    </li>
  </ul>
</div>
 
<script>
new Vue({
  el: '#app',
  data: {
    object: {
      name: '菜鸟教程',
      url: 'http://www.runoob.com',
      slogan: '学的不仅是技术,更是梦想!'
    }
  }
})
</script>

 尝试一下 »

你也可以提供第二个的参数为键名:

v-for

<div id="app">
  <ul>
    <li v-for="(value, key) in object">
    {{ key }} : {{ value }}
    </li>
  </ul>
</div>

 尝试一下 »

第三个参数为索引:

v-for

<div id="app">
  <ul>
    <li v-for="(value, key, index) in object">
     {{ index }}. {{ key }} : {{ value }}
    </li>
  </ul>
</div>

 尝试一下 »

v-for 迭代整数

v-for 也可以循环整数

v-for

<div id="app">
  <ul>
    <li v-for="n in 10">
     {{ n }}
    </li>
  </ul>
</div>

 尝试一下 »

2、
2.返回顶部
 
3.返回顶部
1、v-for 还可以循环数组:
<div id="app">
<ul>
    <li v-for="n in [1,3,5]">
     {{ n }}
    </li>
  </ul>
</div>

 https://c.runoob.com/codedemo/4158

2、v-for 默认行为试着不改变整体,而是替换元素。迫使其重新排序的元素,你需要提供一个 key 的特殊属性:
<div v-for="item in items" :key="item.id">  {{ item.text }}</div>

3、

不仅如此,在迭代属性输出的之前,v-for会对属性进行升序排序输出:

new Vue({
  el: '#app',
  data: {
    object: {
      2: '学的不仅是技术,更是梦想!',
      1: '菜鸟教程',
      0: 'http://www.runoob.com'
    }
  }
})

 

4、
 
4.返回顶部
 
5.返回顶部
1、
2、
 
6.返回顶部
 
warn 作者:ylbtech
出处:http://ylbtech.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!