Vue條件和迴圈語句

2020-09-30 17:00:14

1.條件判斷
 條件判斷使用 v-if 指令:

<div id="app">
    <p v-if="seen">現在你看到我了</p>
    <template v-if="ok">
      <h1>Vue教學</h1>
      <p>學的不僅是技術,更是夢想!</p>
      <p>哈哈哈!!!</p>
    </template>
</div>
<script>
new Vue({
  el: '#app',
  data: {
    seen: true,
    ok: true
  }
})
</script>

這裡, v-if 指令將根據表示式 seen 的值(true 或 false )來決定是否插入 p 元素。
在字串模板中,如 Handlebars ,我們得像這樣寫一個條件塊:

<!-- Handlebars 模板 -->
{{#if ok}}
  <h1>Yes</h1>
{{/if}}

v-else
  可以用 v-else 指令給 v-if 新增一個 「else」 塊:

<div id="app">
    <div v-if="Math.random() > 0.5">
      Sorry
    </div>
    <div v-else>
      Not sorry
    </div>
</div>
    
<script>
new Vue({
  el: '#app'
})
</script>

2.迴圈語句
 迴圈使用 v-for 指令。
 v-for 指令需要以 site in sites 形式的特殊語法, sites 是源資料陣列並且 site 是陣列元素迭代的別名。
v-for 可以繫結資料到陣列來渲染一個列表:

<div id="app">
  <ol>
    <li v-for="site in sites">
      {{ site.name }}
    </li>
  </ol>
</div>
 
<script>
new Vue({
  el: '#app',
  data: {
    sites: [
      { name: 'Runoob' },
      { name: 'Google' },
      { name: 'Taobao' }
    ]
  }
})
</script>

模板中使用 v-for:

<ul>
  <template v-for="site in sites">
    <li>{{ site.name }}</li>
    <li>--------------</li>
  </template>
</ul>

v-for 迭代物件
 v-for 可以通過一個物件的屬性來迭代資料:

<div id="app">
  <ul>
    <li v-for="value in object">
    {{ value }}
    </li>
  </ul>
</div>
 
<script>
new Vue({
  el: '#app',
  data: {
    object: {
      name: 'Vue測試',
      url: 'https://blog.csdn.net',
      slogan: '學的不僅是技術,更是夢想!'
    }
  }
})
</script>

v-for 迭代整數
 v-for 也可以迴圈整數

<div id="app">
  <ul>
    <li v-for="n in 10">
     {{ n }}
    </li>
  </ul>
</div>