vuejs—循環(huán)

上一篇 介紹了vue.js實(shí)現(xiàn)條件渲染,這篇我們一起學(xué)習(xí)同樣十分常見的循環(huán)。

  • v-for
<ul id="example-1">
  <li v-for="item in items">
    {{ item.message }}
  </li>
</ul>
var example1 = new Vue({
  el: '#example-1',
  data: {
    items: [
      { message: 'Foo' },
      { message: 'Bar' }
    ]
  }
})

在 v-for塊內(nèi)我們能完全訪問父組件作用域內(nèi)的屬性,另有一個(gè)特殊變量 $index,正如你猜到的,它是當(dāng)前數(shù)組元素的索引:

<ul id="example-1">
  <li v-for="item in items">
    {{ item.message }} - {{$index}}
  </li>
</ul>
  • template v-for
    類似于 template v-if,也可以將 v-for用在 <template>標(biāo)簽上,以渲染一個(gè)包含多個(gè)元素的塊。例如:
<ul>
  <template v-for="item in items">
    <li>{{ item.msg }}</li>
    <li class="divider"></li>
  </template>
</ul>
數(shù)組相關(guān)操作:
Vue.js 包裝了被觀察數(shù)組的變異方法,故它們能觸發(fā)視圖更新。被包裝的方法有:
push()
pop()
shift()
unshift()
splice()
sort()
reverse()
你可以打開瀏覽器的控制臺(tái),用這些方法修改上例的 items 數(shù)組。
例如:example1.items.push({ message: 'Baz' })。
  • 對(duì)象遍歷
<ul id="repeat-object" class="demo">
  <li v-for="value in object">
    {{ $key }} : {{ value }}
  </li>
</ul>
new Vue({
  el: '#repeat-object',
  data: {
    object: {
      FirstName: 'John',
      LastName: 'Doe',
      Age: 30
    }
  }
})

也可以給對(duì)象的鍵提供一個(gè)別名:

<div v-for="(key, val) in object">
  {{ key }} {{ val }}
</div>
  • 值域v-for
    v-for也可以接收一個(gè)整數(shù),此時(shí)它將重復(fù)模板數(shù)次。
<div>
   <span v-for="n in 10">{{ n }} </span>
</div>

下一篇文章,我們將一起學(xué)習(xí)方法與事件處理器。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 14,206評(píng)論 1 92
  • 這篇筆記主要包含 Vue 2 不同于 Vue 1 或者特有的內(nèi)容,還有我對(duì)于 Vue 1.0 印象不深的內(nèi)容。關(guān)于...
    云之外閱讀 5,187評(píng)論 0 29
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,366評(píng)論 25 708
  • vue.js官網(wǎng)教程學(xué)習(xí)筆記和學(xué)習(xí)摘要 起步 安裝 一個(gè)簡(jiǎn)單的方法,直接把一個(gè)vue.js引入你的HTML頁面中,...
    恰皮閱讀 3,500評(píng)論 2 22
  • 搬運(yùn)過來的,方便以后查 1.粘包產(chǎn)生原因 TCP:由于TCP協(xié)議本身的機(jī)制(面向連接的可靠地協(xié)議-三次握手機(jī)制)客...
    SpursGo閱讀 1,569評(píng)論 0 2

友情鏈接更多精彩內(nèi)容