首页 > 其他分享 >vue(vue-js)—列表渲染(v-for)

vue(vue-js)—列表渲染(v-for)

时间:2024-10-14 20:11:52浏览次数:1  
标签:vue name 渲染 -- age 张三 sex js

原文链接:vue(vue-js)—列表渲染(v-for) – 每天进步一点点 (longkui.site)

列表渲染是前端经常用到的代码,在vue中用v-for做列表渲染。

1.基础用法

首先我们构造一个json数据,

[
    {
        "name":"张三1",
        "sex":"男",
        "age":12
    },
    {
        "name":"张三2",
        "sex":"女",
        "age":31
    },
    {
        "name":"张三4",
        "sex":"男",
        "age":43
    },
    {
        "name":"张三3",
        "sex":"男",
        "age":13
    }
]

然后通过下面的代码进行遍历:

 <div>
            <li v-for="i in list">
                {{i.name}}  --{{i.sex}}--{{i.age}}      
            </li>
  </div>

效果图:

完整代码如下:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>vue测试</title>
    <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.js"></script>

</head>

<body>
    <div id="root">
        <div>
            <li v-for="i in list">
                {{i.name}}  --{{i.sex}}--{{i.age}}      
            </li>
        </div>

    </div>

    <script type="text/javascript">
        new Vue({
            el: '#root',
            data: {
                list: [
                    {
                        "name": "张三1",
                        "sex": "男",
                        "age": 12
                    },
                    {
                        "name": "张三2",
                        "sex": "女",
                        "age": 31
                    },
                    {
                        "name": "张三4",
                        "sex": "男",
                        "age": 43
                    },
                    {
                        "name": "张三3",
                        "sex": "男",
                        "age": 13
                    }
                ]
            },
        })
    </script>
</body>
</html>
2.带key值的写法
  <div>
            <li v-for="(i,index) in list" :key="index">
                {{i.name}}  --{{i.sex}}--{{i.age}}--{{index}}      
            </li>
  </div>

比较推荐这种写法,实际开发中,返回的json数据如果没有唯一标识,将会是一场灾难!!

效果图:

 
3.数值与对象的区别

除了可以遍历数组之外,还可以遍历对象,比如下面这样的数据:

 list2:{
                    name:"张三",
                    sex:"男",
                    age:"12",
                }

遍历形式改成这样

<div>
            <li v-for="(value,index) in list2" :key="index">
                {{index}}  --{{value}}    
            </li>
        </div>

效果如下:

注意:遍历对象的时候,(value,index),前者是value,后者是key。不要写反。

标签:vue,name,渲染,--,age,张三,sex,js
From: https://www.cnblogs.com/longkui-site/p/18464926

相关文章

  • vue(vue.js)—列表过滤
    原文链接:vue(vue.js)—列表过滤–每天进步一点点(longkui.site) 列表过滤可以认为是模糊搜索。实现的下面的这种效果:1.监视属性watch实现参考代码如下:<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatibl......
  • springboot基于java的居家养老通用平台(源码+java+vue+部署文档+讲解等)
    收藏关注不迷路!!......
  • 基于Java使用SpringBoot+Vue框架实现的前后端分离的美食分享平台
    ✌全网粉丝20W+,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌......
  • nbsaas vue3管理后台框架
    nbsaasvue3管理后台框架一、项目概述NbsaasAdminVue是一个基于Vue.js3.0构建的轻量级后台管理系统,结合了现代前端技术栈的最佳实践,旨在帮助开发者快速构建具有高可扩展性和良好用户体验的后台管理系统。该项目拥有简洁的UI设计,强大的功能模块,支持多种自定义配置,......
  • vue3中的defineProps,defineEmits,defineExpose的使用详解
    defineProps 和 defineEmits 都是只能在 <scriptsetup> 中使用的编译器宏。他们不需要导入,且会随着 <scriptsetup> 的处理过程一同被编译掉。defineProps 接收与 props 选项相同的值,defineEmits 接收与 emits 选项相同的值,它们具备完整的类型推断并且在scriptse......
  • vue3 antvX6的使用源码
    npminstall--save@antv/x6<template><divclass="dashboard-container"><p>选择节点</p><button@click="save">保存</button><divclass="antvBox"><divclass="m......
  • MacOS安装nvm管理NodeJs
    安装nvm%curl-o-https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.4/install.sh|bash安装完成验证%nvm--version0.40.0安装NodeJs%nvminstall14.21.3%nvminstall20查看安装的NodeJs%nvmls->v14.21.3v20.18.0切换NodeJs版本......
  • 基于nodejs+vue基于springboot的高校资源共享平台[开题+源码+程序+论文]计算机毕业设
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着信息技术的飞速发展和教育改革的不断深入,高校资源共享已成为提升教育质量、促进学术交流的重要途径。然而,传统的高校资源管理模式存在资源分散、利用率......
  • vue3 做个点击拖拽的的按钮
    //视图层<divclass="regularAI"ref="draggableDiv":style="{top:`${position.y}px`,left:`${position.x}px`}"> <span@mousedown="startDrag">{{isDragging?'拖拽中':'点击拖拽'}}</span&......
  • 基于nodejs+vue基于springboot的个人博客设计与实现[开题+源码+程序+论文]计算机毕业
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着互联网技术的飞速发展和信息时代的到来,个人表达与分享的需求日益增长。博客作为一种重要的网络应用形式,为博主提供了展示自我、分享知识与见解的平台。......