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>

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

相关推荐
知识分享小能手10 小时前
uni-app 入门学习教程,从入门到精通,uni-app基础扩展 —— 详细知识点与案例(3)
vue.js·学习·ui·微信小程序·小程序·uni-app·编程
demi_meng11 小时前
reactNative 遇到的问题记录
javascript·react native·react.js
MC丶科11 小时前
【SpringBoot 快速上手实战系列】5 分钟用 Spring Boot 搭建一个用户管理系统(含前后端分离)!新手也能一次跑通!
java·vue.js·spring boot·后端
千码君201611 小时前
React Native:从react的解构看编程众多语言中的解构
java·javascript·python·react native·react.js·解包·解构
lijun_xiao200913 小时前
前端最新Vue2+Vue3基础入门到实战项目全套教程
前端
90后的晨仔13 小时前
Pinia 状态管理原理与实战全解析
前端·vue.js
杰克尼13 小时前
JavaWeb_p165部门管理
java·开发语言·前端
EndingCoder13 小时前
WebSocket实时通信:Socket.io
服务器·javascript·网络·websocket·网络协议·node.js
90后的晨仔13 小时前
Vue3 状态管理完全指南:从响应式 API 到 Pinia
前端·vue.js
90后的晨仔14 小时前
Vue 内置组件全解析:提升开发效率的五大神器
前端·vue.js