欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue.js基于v-for實現(xiàn)批量渲染 Json數(shù)組對象列表數(shù)據(jù)示例

 更新時間:2019年08月03日 09:48:25   作者:sennyla  
這篇文章主要介紹了vue.js基于v-for實現(xiàn)批量渲染 Json數(shù)組對象列表數(shù)據(jù),結(jié)合實例形式分析了vue.js使用v-for遍歷json格式數(shù)據(jù)渲染列表相關(guān)操作技巧,需要的朋友可以參考下

本文實例講述了vue.js基于v-for實現(xiàn)批量渲染 Json數(shù)組對象列表數(shù)據(jù)。分享給大家供大家參考,具體如下:

Vuejs的出現(xiàn)減輕了對DOM的直接操作,同時它提供的 v-for 渲染列表數(shù)據(jù)也給我們提供了很大的方便。即使是復(fù)雜的 Json數(shù)組對象,也可以使用 多層嵌套的 v-for 實現(xiàn),格式如下:

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

假設(shè)當(dāng)前的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">職業(yè)知識</p>
                <p class="help">生涯樹提供的職業(yè)數(shù)據(jù)框架,可以從職業(yè)能力、知識、技能、活動、內(nèi)容方面進(jìn)行探索和規(guī)劃</p>
              </div>
            </div>
            <div class="message-body">
              <div class="field buttons">
                <a>興趣:</a>
                <span>常見的任務(wù)和環(huán)境的偏好</span>
              </div>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>
</div>

需要渲染的JSON數(shù)組對象格式如下:

var allData = [
  {
    "id":"職業(yè)知識",
    "name":"關(guān)于各行業(yè)職業(yè)信息的分析,主要因素分析",
    "lists":[
      {
        "title":"興趣",
        "describe":"常見的任務(wù)和環(huán)境的偏好"
      },
      {
        "title":"價值觀",
        "describe":"個人滿意度的關(guān)鍵方面"
      },
      {
        "title":"技能",
        "describe":"學(xué)習(xí)發(fā)展、組織協(xié)作和資源管理的發(fā)達(dá)能力"
      }
    ]
  },
  {
    "id":"職業(yè)擴(kuò)展",
    "name":"提供除本職業(yè)之外的擴(kuò)展知識等各個方面",
    "lists":[
      {
        "title":"活動",
        "describe":"常見的工作行為類型"
      },
      {
        "title":"內(nèi)容",
        "describe":"工作性質(zhì)的物理和社會因素"
      },
      {
        "title":"能力",
        "describe":"個人基本持久屬性"
      }
    ]
  }
];

使用VUE操作渲染列表,先對文本分配對應(yīng)的字段值,格式如下:

<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,創(chuàng)建實例渲染到指定對象(引入鏈接請移步到官網(wǎng) 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渲染列表數(shù)據(jù)完成,就是這么簡單。接下來看看 原生JS 是如何渲染列表數(shù)據(jù)的:

原生JS操作數(shù)組取值:循環(huán)。使用 for in 直接操作對象,或者 for循環(huán)直接取值,格式如下:

for(var key in values){};for(var i=0;i<values.length;i++){},根據(jù)情況取任意一種方式,以為演示兩種方式的使用

function Id(id) {
  return document.getElementById(id); //獲取模塊的ID
}
function getData(allData) {
  var data = Id("data");
  var html='';
  for(var i in allData){ //外層循環(huán)獲取標(biāo)志信息
    var list = '';
    for(var j=0;j<allData[i].lists.length;j++){ //內(nèi)層循環(huán)渲染詳細(xì)列表項
      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+  //將內(nèi)層渲染好的列表項模塊添加到外層大模塊中
      '</div>';
  }
  data.innerHTML = html; //像指定的ID模塊追加內(nèi)容
}
//調(diào)用渲染數(shù)據(jù)方法并傳遞參數(shù) JSON數(shù)組對象
getData(allData);

最終,VUE ,原生JS 渲染出來的列表數(shù)據(jù)效果均如下:

希望本文所述對大家vue.js程序設(shè)計有所幫助。

相關(guān)文章

  • vue接口請求加密實例

    vue接口請求加密實例

    這篇文章主要介紹了vue接口請求加密實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • Nuxt3嵌套路由,報錯Failed?to?resolve?component:?NuxtChild的解決

    Nuxt3嵌套路由,報錯Failed?to?resolve?component:?NuxtChild的解決

    這篇文章主要介紹了Nuxt3嵌套路由,報錯Failed?to?resolve?component:?NuxtChild的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • vue 實現(xiàn) ios 原生picker 效果及實現(xiàn)思路解析

    vue 實現(xiàn) ios 原生picker 效果及實現(xiàn)思路解析

    這篇文章主要介紹了vue 實現(xiàn) ios 原生picker 效果及實現(xiàn)思路解析,本文給大家介紹的非常詳細(xì),具有參考借鑒價值,需要的朋友可以參考下
    2017-12-12
  • 詳解vue.js2.0父組件點擊觸發(fā)子組件方法

    詳解vue.js2.0父組件點擊觸發(fā)子組件方法

    本篇文章主要介紹了詳解vue.js2.0父組件點擊觸發(fā)子組件方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • 解決vue處理axios post請求傳參的問題

    解決vue處理axios post請求傳參的問題

    下面小編就為大家分享一篇解決vue處理axios post請求傳參的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • Vue配合iView實現(xiàn)省市二級聯(lián)動的示例代碼

    Vue配合iView實現(xiàn)省市二級聯(lián)動的示例代碼

    本篇文章主要介紹了Vue配合iView實現(xiàn)省市二級聯(lián)動的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • 計算屬性和偵聽器詳情

    計算屬性和偵聽器詳情

    這篇文章主要介紹了計算屬性和偵聽器,文章以介紹計算屬性、偵聽器的相關(guān)資料展開詳細(xì)內(nèi)容,需要的朋友可以參考一下,希望對你有所幫助
    2021-11-11
  • vue返回首頁后如何清空路由問題

    vue返回首頁后如何清空路由問題

    這篇文章主要介紹了vue返回首頁后如何清空路由問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Vue中虛擬DOM的簡單實現(xiàn)

    Vue中虛擬DOM的簡單實現(xiàn)

    Vue中的虛擬DOM是通過JavaScript對象來描述真實DOM結(jié)構(gòu)的一種方式,本文將介紹Vue中虛擬DOM的簡單實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2023-05-05
  • 深入理解Vue.js源碼之事件機(jī)制

    深入理解Vue.js源碼之事件機(jī)制

    本篇文章主要介紹了Vue.js源碼之事件機(jī)制,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09

最新評論