• 技术文章 >web前端 >Vue.js

    浅析Vue的列表渲染指令:v-for

    青灯夜游青灯夜游2022-10-24 21:40:50转载283
    本篇文章带大家一起了解下Vue的列表渲染指令:v-for,希望给大家有所帮助!

    大前端成长进阶课程:进入学习

    Vue的列表渲染

    1.1.v-for

    ⭐⭐
    个人感觉其实就是基础语法的for循环,使用上也差不多,只是形式不同罢了,理解会使用。(学习视频分享:vue视频教程

    使用方法;

    1、遍历数组

    v-for="item in 数组"
    v-for="(item, index) in 数组"

    对一个数组进行遍历实例:

    <div class="item" v-for="item in products">
        <h3 class="title">商品:{{item.name}}</h3>
        <span>价格:{{item.price}}</span>
        <p>秒杀:{{item.desc}}</p>
    </div>
    
    const app = Vue.createApp({
            data() {
              return {
                //2.数组 存放的是对象
                products: [
                  { id: 11, name: "mac", price: 1000, desc: "99" },
                ],
              };
            },
          });
    
    app.mount("#app");

    2、遍历对象
    ⭐⭐
    v-for也支持遍历对象,并且支持有一二三个参数:

    v-for同时也支持数字的遍历:
    每一个item都是一个数字;

    <!-- 2.遍历对象 -->
          <ul>
            <li v-for="(value,key,index) in info">
              {{value}} - {{key}} - {{index}}
            </li>
          </ul>
     
     const app = Vue.createApp({
            data() {
              return {
                info: { bame: "why", age: 18, height: 1.88 },
              };
            },
          });
    app.mount("#app");

    3、遍历字符串

    <li v-for="item in 100">{{item}}</li>

    1.2.v-for和template

    ⭐⭐
    我们可以使用templ元素来循环渲染一段包含多个元素的内容

    为什么这里不使用div呢?

    我之前学的时候也没有怎么考虑这个,整理笔记的时候发现了这个问题

    原因

    其实,template的作用就是模板占位符,可以帮助我们包裹元素,在循环的过程总,template不会被渲染到页面上。

    <div v-for="(value,key,index) in infos">
            <span>{{value}}</span>
            <strong>{{key}}</strong>
            <i>{{index}}</i>
    </div>
    <template v-for="(value,key,index) in infos">
            <span>{{value}}</span>
            <strong>{{key}}</strong>
            <i>{{index}}</i>
    </template>

    1.3.v-for 数组更新检测

    ⭐⭐

    Vue将被侦听的数组的变更方法进行了包裹,所以它们也将会触发视图更新

    被包裹过的方法包括

    这些方法的用法其实在js中都是差不多的,用到的时候想起来再查查

    替换数组的方法

    //并不是完整写法!!!
    
    <li v-for="item in names">{{item}}</li>
    names: ["abc", "bac", "aaa", "cbb"],
    // 1.直接将数组修改为一个新的数组
    this.names = ["cc", "kk"];
    
    // 2.通过一些数组的方法,修改数组中的元素
    this.names.push("cc");
    this.names.pop();
    this.names.splice(2, 1, "cc");
    this.names.sort();
    this.names.reverse();

    【相关视频教程推荐:vuejs入门教程web前端入门

    以上就是浅析Vue的列表渲染指令:v-for的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:csdn,如有侵犯,请联系admin@php.cn删除

    前端(VUE)零基础到就业课程:点击学习

    清晰的学习路线+老师随时辅导答疑

    自己动手写 PHP MVC 框架:点击学习

    快速了解MVC架构、了解框架底层运行原理

    专题推荐:vue3 Vue
    上一篇:详解Vue中的Mustache插值语法、v-bind指令 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• ❤️‍🔥接口自动化测试不想写代码?• 10个提高开发效率的Vue3常用插件(快来收藏)• 6个实用的Vue3相关生态(总结分享)• 【吐血整理】40+ Vue3 实用工具分享• 详解Vue3状态管理库Pinia的使用方法• Laravel与Vue Nginx配置的2个常见问题解决方法
    1/1

    PHP中文网