文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

vue怎么批量渲染Json数组对象列表数据

2023-07-04 13:36

关注

本文小编为大家详细介绍“vue怎么批量渲染Json数组对象列表数据”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue怎么批量渲染Json数组对象列表数据”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

Vuejs的出现减轻了对DOM的直接操作,同时它提供的 v-for 渲染列表数据也给我们提供了很大的方便。即使是复杂的 Json数组对象,也可以使用 多层嵌套的 v-for 实现,格式如下:

<div v-for="(item,index) in items">  <div v-for="(list,index) in item.lists"></div><div>

假设当前的HTML,VUE 文本格式如下:

<div id="app" class="columns">  <div class="column">    <div class="card">      <div class="card-content">        <div id="data" class="columns is-multiline ">          <div class="column is-half">            <div class="media">              <div class="media-content">                <p class="has-text-weight-bold">职业知识</p>                <p class="help">生涯树提供的职业数据框架,可以从职业能力、知识、技能、活动、内容方面进行探索和规划</p>              </div>            </div>            <div class="message-body">              <div class="field buttons">                <a>兴趣:</a>                <span>常见的任务和环境的偏好</span>              </div>            </div>          </div>        </div>      </div>    </div>  </div></div>

需要渲染的JSON数组对象格式如下:

var allData = [  {    "id":"职业知识",    "name":"关于各行业职业信息的分析,主要因素分析",    "lists":[      {        "title":"兴趣",        "describe":"常见的任务和环境的偏好"      },      {        "title":"价值观",        "describe":"个人满意度的关键方面"      },      {        "title":"技能",        "describe":"学习发展、组织协作和资源管理的发达能力"      }    ]  },  {    "id":"职业扩展",    "name":"提供除本职业之外的扩展知识等各个方面",    "lists":[      {        "title":"活动",        "describe":"常见的工作行为类型"      },      {        "title":"内容",        "describe":"工作性质的物理和社会因素"      },      {        "title":"能力",        "describe":"个人基本持久属性"      }    ]  }];

使用VUE操作渲染列表,先对文本分配对应的字段值,格式如下:

<div class="column is-half" v-for="(item, index) in items">  <div class="media">    <div class="media-content">      <p class="has-text-weight-bold">{{ item.id }}</p>      <p class="help">{{ item.name }}</p>    </div>  </div>  <div class="message-body" v-for="(list, index) in item.lists">    <div class="field buttons" >      <a>{{ list.title}}:</a>      <span>{{ list.describe}}</span>    </div>  </div></div>

JS操作,引入 vuejs,创建实例渲染到指定对象

<script src="https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js"></script>
var vm = new Vue({ el: '#app', data: { items:allData }})

VUE渲染列表数据完成,就是这么简单。接下来看看 原生JS 是如何渲染列表数据的:

原生JS操作数组取值:循环。使用 for in 直接操作对象,或者 for循环直接取值,格式如下:

for(var key in values){};for(var i=0;i<values.length;i++){},根据情况取任意一种方式,以为演示两种方式的使用

function Id(id) {  return document.getElementById(id); //获取模块的ID}function getData(allData) {  var data = Id("data");  var html='';  for(var i in allData){ //外层循环获取标志信息    var list = '';    for(var j=0;j<allData[i].lists.length;j++){ //内层循环渲染详细列表项      list+='<div class="message-body">'+          '<div class="field buttons">'+            '<a class=" ">'+allData[i].lists[j].title+':</a>'+            '<span>'+allData[i].lists[j].describe+'</span>'+          '</div>'+        '</div>';    }    html+='<div class="column is-half">'+        '<div class="media">'+          '<div class="media-content">'+          '<p class="has-text-weight-bold">'+allData[i].id+'</p>'+          '<p class="help">'+allData[i].name+'</p>'+          '</div>'+        '</div>'+list+  //将内层渲染好的列表项模块添加到外层大模块中      '</div>';  }  data.innerHTML = html; //像指定的ID模块追加内容}//调用渲染数据方法并传递参数 JSON数组对象getData(allData);

最终,VUE ,原生JS 渲染出来的列表数据效果均如下:

vue怎么批量渲染Json数组对象列表数据

Vue的优点

Vue具体轻量级框架、简单易学、双向数据绑定、组件化、数据和结构的分离、虚拟DOM、运行速度快等优势,Vue中页面使用的是局部刷新,不用每次跳转页面都要请求所有数据和dom,可以大大提升访问速度和用户体验。

读到这里,这篇“vue怎么批量渲染Json数组对象列表数据”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网行业资讯频道。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯