vue.js基于v-for实现批量渲染 Json数组对象列表数据示例

2020-06-14 06:01:47易采站长站整理

本文实例讲述了vue.js基于v-for实现批量渲染 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操作渲染列表,先对文本分配对应的字段值,格式如下: