Vue中v-for的9種使用案例總結(jié)大全
v-for可以用于循環(huán)渲染數(shù)組、對象和數(shù)字等數(shù)據(jù)類型,常見的使用場景包括:
1. 循環(huán)渲染數(shù)組
以下代碼的意思是:循環(huán)渲染一個包含三個元素的列表,每個元素的值分別為“第一項”、“第二項”和“第三項”。
<template> <div> <ul> <li v-for="(item, index) in list" :key="index">{{ item }}</li> </ul> </div> </template> <script> export default { data() { return { list: ['第一項', '第二項', '第三項'] } } } </script>
2. 循環(huán)渲染對象
以下代碼的意思是:循環(huán)渲染一個包含三個屬性的對象,每個屬性的鍵值對分別為“name: 張三”、“age: 18”和“gender: 男”。
<template> <div> <ul> <li v-for="(value, key) in obj" :key="key">{{ key }}: {{ value }}</li> </ul> </div> </template> <script> export default { data() { return { obj: { name: '張三', age: 18, gender: '男' } } } } </script>
3. 循環(huán)渲染數(shù)字
以下代碼的意思是:循環(huán)渲染數(shù)字1到5,每個數(shù)字作為列表項的內(nèi)容。
<template> <div> <ul> <li v-for="n in 5" :key="n">{{ n }}</li> </ul> </div> </template> <script> export default { data() { return {} } } </script>
4. 循環(huán)渲染帶有索引的數(shù)組
以下代碼的意思是:循環(huán)渲染一個包含三個元素的列表,每個元素的值分別為“第一項”、“第二項”和“第三項”,并在每個列表項前面顯示該項的索引。
<template> <div> <ul> <li v-for="(item, index) in list" :key="index">{{ index }}: {{ item }}</li> </ul> </div> </template> <script> export default { data() { return { list: ['第一項', '第二項', '第三項'] } } } </script>
5. 循環(huán)渲染嵌套數(shù)組
以下代碼的意思是:循環(huán)渲染一個包含兩個元素的列表,每個元素包含一個標題和一個子列表,子列表中包含兩個子項。
<template> <div> <ul> <li v-for="(item, index) in list" :key="index"> {{ item.title }} <ul> <li v-for="(subItem, subIndex) in item.subList" :key="subIndex">{{ subItem }}</li> </ul> </li> </ul> </div> </template> <script> export default { data() { return { list: [ { title: '第一項', subList: ['子項1', '子項2'] }, { title: '第二項', subList: ['子項3', '子項4'] } ] } } } </script>
6. 循環(huán)渲染對象數(shù)組
以下代碼的意思是:循環(huán)渲染一個包含三個元素的對象數(shù)組,每個元素包含一個name和age屬性。
<template> <div> <ul> <li v-for="(item, index) in list" :key="index"> {{ item.name }} - {{ item.age }} </li> </ul> </div> </template> <script> export default { data() { return { list: [ { name: '張三', age: 18 }, { name: '李四', age: 20 }, { name: '王五', age: 22 } ] } } } </script>
7. 循環(huán)渲染多維數(shù)組
以下代碼的意思是:循環(huán)渲染一個包含兩個元素的多維數(shù)組,每個元素是一個包含兩個元素的數(shù)組。
<template> <div> <ul> <li v-for="(item, index) in list" :key="index"> {{ item }} </li> </ul> </div> </template> <script> export default { data() { return { list: [ ['第一項', '第二項'], ['第三項', '第四項'] ] } } } </script>
8. 循環(huán)渲染對象的屬性數(shù)組
以下代碼的意思是:循環(huán)渲染一個對象的屬性數(shù)組,每個元素是對象的一個屬性值
<template> <div> <ul> <li v-for="(item, index) in list" :key="index"> {{ item }} </li> </ul> </div> </template> <script> export default { data() { return { obj: { name: '張三', age: 18, gender: '男' } } }, computed: { list() { return Object.values(this.obj) } } } </script>
9. 循環(huán)渲染組件
以下代碼的意思是:循環(huán)渲染一個包含三個元素的對象數(shù)組,
<template> <div> <my-component v-for="(item, index) in list" :key="index" :item="item"></my-component> </div> </template> <script> import MyComponent from './MyComponent.vue' export default { components: { MyComponent }, data() { return { list: [ { name: '張三', age: 18 }, { name: '李四', age: 20 }, { name: '王五', age: 22 } ] } } } </script>
總結(jié)
到此這篇關(guān)于Vue中v-for的9種使用案例的文章就介紹到這了,更多相關(guān)Vue v-for使用案例內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue .js綁定checkbox并獲取、改變選中狀態(tài)的實例
今天小編就為大家分享一篇vue .js綁定checkbox并獲取、改變選中狀態(tài)的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-08-08vue解決Not?allowed?to?load?local?resource問題的全過程
這篇文章主要給大家介紹了關(guān)于vue解決Not?allowed?to?load?local?resource問題的相關(guān)資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下2022-10-10Vue?Router?返回后記住滾動條位置的實現(xiàn)方法
使用?Vue?router?創(chuàng)建?SPA(Single?Page?App),往往有這種需求:首頁是列表頁,點擊列表項進入詳情頁,在詳情頁點擊返回首頁后,希望看到的是,首頁不刷新,并且滾動條停留在之前的位置,這篇文章主要介紹了Vue?Router?返回后記住滾動條位置的實現(xiàn)方法,需要的朋友可以參考下2023-09-09使用axios發(fā)送post請求,將JSON數(shù)據(jù)改為form類型的示例
今天小編就為大家分享一篇使用axios發(fā)送post請求,將JSON數(shù)據(jù)改為form類型的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10前端設(shè)置cookie之vue-cookies使用及說明
這篇文章主要介紹了前端設(shè)置cookie之vue-cookies使用及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-05-05vue 自定指令生成uuid滾動監(jiān)聽達到tab表格吸頂效果的代碼
這篇文章主要介紹了vue 自定指令生成uuid滾動監(jiān)聽達到tab表格吸頂效果,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-09-09