v-for

根据数据生成列表结构 语法:(item,index)in 数据 item和index可以和其他指令一起使用 数组长度的更新会同步到页面上,为响应式 v-for可以绑定数据到数组来渲染一个列表

实例-循环列表

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>v-for 实例</title>
  6. <script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
  7. </head>
  8. <body>
  9. <div id="app">
  10. <ol>
  11. <li v-for="A in B">{{ A.name }}</li>
  12. </ol>
  13. </div>
  14. <script>
  15. new Vue({
  16. el: "#app",
  17. data: {
  18. B: [
  19. { name: "春" },
  20. { name: "夏" },
  21. { name: "秋" },
  22. { name: "冬" },
  23. ],
  24. },
  25. });
  26. </script>
  27. </body>
  28. </html>

实例-循环整数(1-10)

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>v-for 循环整数</title>
  6. <script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
  7. </head>
  8. <body>
  9. <div id="app">
  10. <ul>
  11. <li v-for="n in 10">{{ n }}</li>
  12. </ul>
  13. </div>
  14. <script>
  15. new Vue({
  16. el: "#app",
  17. });
  18. </script>
  19. </body>
  20. </html>

实例-遍历对象属性

通过对象属性来迭代数据 语法: (value,key,index)in user 有三个参数

  • value属性
  • key参数
  • index索引
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>Vue 测试实例 </title>
  6. <script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
  7. </head>
  8. <body>
  9. <div id="app">
  10. <ul>
  11. <li v-for="(value, key, index) in object">
  12. {{ index }}. {{ key }} : {{ value }}
  13. </li>
  14. </ul>
  15. </div>
  16. <script>
  17. new Vue({
  18. el: "#app",
  19. data: {
  20. object: {
  21. name: "张忠兴",
  22. age: "7900岁",
  23. slogan: "正在读高二",
  24. },
  25. },
  26. });
  27. </script>
  28. </body>
  29. </html>

实例-循环理解

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>Vue 测试实例 </title>
  6. <script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
  7. </head>
  8. <body>
  9. <div id="app">
  10. <ul>
  11. <template v-for="site in sites">
  12. <li>{{ site.name }}</li>
  13. <li>--------------</li>
  14. </template>
  15. </ul>
  16. </div>
  17. <script>
  18. new Vue({
  19. el: "#app",
  20. data: {
  21. sites: [{ name: "Runoob" }, { name: "Google" }, { name: "Taobao" }],
  22. },
  23. });
  24. </script>
  25. </body>
  26. </html>

实例-属性遍历

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  7. <title>v-for指令</title>
  8. </head>
  9. <body>
  10. <div id="app">
  11. <input type="button" value="添加数据" @click="add">
  12. <input type="button" value="移除数据" @click="remove">
  13. <ul>
  14. <li v-for="(it,index) in arr">
  15. {{ index + 1 }}黑马程序员校区:{{ it }}
  16. </li>
  17. </ul>
  18. <h2 v-for="item in vegetables" v-bind:title="item.name">
  19. {{ item.name }}
  20. </h2>
  21. </div>
  22. <!-- 1.开发环境版本,包含了有帮助的命令行警告 -->
  23. <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
  24. <script>
  25. var app = new Vue({
  26. el: "#app",
  27. data: {
  28. arr: ["北京", "上海", "广州", "深圳"],
  29. vegetables: [
  30. {name: "西兰花炒蛋"},
  31. {name: "蛋炒西蓝花"}
  32. ]
  33. },
  34. methods: {
  35. add: function () {
  36. this.vegetables.push({name: "糖醋排骨"});
  37. },
  38. remove: function () {
  39. this.vegetables.shift();
  40. }
  41. },
  42. })
  43. </script>
  44. </body>
  45. </html>