vue常用指令(v-for)

一、v-for 指令

  • 作用:
    • 根据数据生成列表结构

二、代码演示

1、在li标签中获取数组元素

  1. 代码

    js 复制代码
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
      </head>
      <body>
        <div id="app">
          <ul>
            <!-- 在li标签中获取数组元素 -->
            <li v-for="(item, index) in arr">{{index+1}}.动物:{{item}}</li>
          </ul>
        </div>
      </body>
    
      <script src="js/vue.min.js"></script>
      <script>
        var Vm = new Vue({
          el: "#app",
          data: {
            //普通数组
            arr: ["猫", "狗", "长颈鹿"],
          },
          methods: {},
        });
      </script>
    </html>
  2. 测试结果:

2、v-for 结合 v-bind一起使用,显示对象

  1. 修改代码

    js 复制代码
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
      </head>
      <body>
        <div id="app">
          <ul>
            <!-- 在li标签中获取数组元素 -->
            <li v-for="(item, index) in arr">{{index+1}}.动物:{{item}}</li>
          </ul>
    
          <br />
    
          <!-- v-for 结合 v-bind一起使用,显示对象 -->
          <h2 v-for="p in objArr" v-bind:title="p.age">{{p.name}}</h2>
        </div>
      </body>
    
      <script src="js/vue.min.js"></script>
      <script>
        var Vm = new Vue({
          el: "#app",
          data: {
            //普通数组
            arr: ["猫", "狗", "长颈鹿"],
            objArr: [
              { name: "张三", age: 18 },
              { name: "李四", age: 20 },
            ],
          },
          methods: {},
        });
      </script>
    </html>
  2. 测试结果

3、数组的添加和减少

  1. 代码修改

    js 复制代码
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
      </head>
      <body>
        <div id="app">
          <ul>
            <!-- 在li标签中获取数组元素 -->
            <li v-for="(item, index) in arr">{{index+1}}.动物:{{item}}</li>
          </ul>
    
          <br />
    
          <!-- v-for 结合 v-bind一起使用,显示对象 -->
          <input type="button" value="增加" @click="add" />
          <input type="button" value="减少" @click="remove" />
          <h2 v-for="p in objArr" v-bind:title="p.age">{{p.name}}</h2>
        </div>
      </body>
    
      <script src="js/vue.min.js"></script>
      <script>
        var Vm = new Vue({
          el: "#app",
          data: {
            //普通数组
            arr: ["猫", "狗", "长颈鹿"],
            objArr: [
              { name: "张三", age: 18 },
              { name: "李四", age: 20 },
            ],
          },
          methods: {
            add: function () {
              this.objArr.push({ name: "钱七", age: 38 });
            },
            remove: function () {
              this.objArr.shift();
            },
          },
        });
      </script>
    </html>

    数组的长度变化,会同步更新到页面上 , 是响应式的。

相关推荐
知识分享小能手1 小时前
React学习教程,从入门到精通, React 属性(Props)语法知识点与案例详解(14)
前端·javascript·vue.js·学习·react.js·vue·react
luckys.one1 小时前
第9篇:Freqtrade量化交易之config.json 基础入门与初始化
javascript·数据库·python·mysql·算法·json·区块链
魔云连洲1 小时前
深入解析:Vue与React的异步批处理更新机制
前端·vue.js·react.js
mCell2 小时前
JavaScript 的多线程能力:Worker
前端·javascript·浏览器
weixin_437830943 小时前
使用冰狐智能辅助实现图形列表自动点击:OCR与HID技术详解
开发语言·javascript·ocr
超级无敌攻城狮3 小时前
3 分钟学会!波浪文字动画超详细教程,从 0 到 1 实现「思考中 / 加载中」高级效果
前端
excel4 小时前
用 TensorFlow.js Node 实现猫图像识别(教学版逐步分解)
前端
前端工作日常4 小时前
我学习到的Vue2.6的prop修饰符
vue.js
gnip5 小时前
JavaScript事件流
前端·javascript
小菜全5 小时前
基于若依框架Vue+TS导出PDF文件的方法
javascript·vue.js·前端框架·json