<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,创建实例渲染到指定对象(引入链接请移步到官网 https://cn.vuejs.org/)
<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.js程序设计有所帮助。










