iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 12
0
自我挑戰組

從0開始vue.js的30天學習日誌系列 第 12

12 Vue的模板語法 - 迴圈 v-for (2) 使用<tamplate>

  • 分享至 

  • xImage
  •  

昨天學習v-for語法是以render一組標籤來作範例,那如果遇到需要一次render不只一組標籤呢?
假設想render出來的結構長這樣:

<div id="app">
  <h3>title1</h3>
  <p>paragraph</p>
  <h3>title2</h3>
  <p>paragraph</p>
  .
  .
  .
 
  <!--這樣是一組-->
 <!--
  <h3></h3>
  <p></p>
  -->
</div>

也就是說沒有要在h3p的外面再包一層tag的時候怎麼做呢?
這時候可以使用Vue的一個模板叫<template>

<div id="app">
  <template v-for="(item ,key) in todo">
    <h3>{{key}}</h3>
    <p>{{item}}</p>
  </template>
</div>

vue實體:

//js
  <script>
    new Vue({
      el: "#app",
      data: {
        todo: {
          morning: '吃飯',
          evening: '睡覺',
          night: '打東東'
        }
      }
    });
  </script>

輸出結果:

<div id="app">
  <h3>morning</h3>
  <p>吃飯了吃飯了吃飯了吃飯了吃飯了</p>
  <h3>evening</h3>
  <p>睡覺了睡覺了睡覺了睡覺了睡覺了</p>
  <h3>night</h3>
  <p>打東東打東東打東東打東東打東東打東東</p>
</div>

有沒有發現外面包的<template>是不會被render出來的,所以當需要輸出不只一個元素時,可以搭配<template>作使用。


上一篇
11 Vue的模板語法 - 迴圈 v-for (1) 基本用法
下一篇
13 JavaScript ES6 - 變數宣告let, const
系列文
從0開始vue.js的30天學習日誌30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言