Vue.js 條件語句
條件判斷
v-if
條件判斷使用 v-if 指令:
v-if 指令
在元素 和 template 中使用 v-if 指令:
<div id="app">
<p v-if="seen">現在你看到我了</p>
<template v-if="ok">
<h1>入門教學</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" 塊:
v-else 指令
隨機生成一個數字,判斷是否大於0.5,然後輸出對應資訊:
<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>
嘗試一下 ?
v-else-if
v-else-if 在 2.1.0 新增,顧名思義,用作 v-if 的 else-if 塊。可以鏈式的多次使用:
v-else 指令
判斷 type 變數的值:
<div id="app">
<div v-if="type === 'A'">
A
</div>
<div v-else-if="type === 'B'">
B
</div>
<div v-else-if="type === 'C'">
C
</div>
<div v-else>
Not A/B/C
</div>
</div>
<script>
new Vue({
el: '#app',
data: {
type: 'C'
}
})
</script>
嘗試一下 ?
v-else 、v-else-if 必須跟在 v-if 或者 v-else-if之後。
v-show
我們也可以使用 v-show 指令來根據條件展示元素:
v-show 指令
<h1 v-show="ok">Hello!</h1>
嘗試一下 ?