vue學習 條件渲染

2022-09-19 17:45:12 字數 1683 閱讀 1353

v-if指令用於條件性地渲染一塊內容。這塊內容只會在指令的表示式返回 truthy 值的時候被渲染。

也可以用v-else新增乙個「else 塊」:

因為v-if是乙個指令,所以必須將它新增到乙個元素上。但是如果想切換多個元素呢?此時可以把乙個元素當做不可見的包裹元素,並在上面使用v-if。最終的渲染結果將不包含元素。

if="ok">

paragraph 1

paragraph 2

你可以使用v-else指令來表示v-if的「else 塊」:

if="math.random() > 0.5">now you see me

else>now you don't

v-else元素必須緊跟在帶v-if或者v-else-if的元素的後面,否則它將不會被識別。

v-else-if,顧名思義,充當v-if的「else-if 塊」,並且可以連續使用:

if="type === 'a'">a

else-if="type === 'b'">b

else-if="type === 'c'">c

else>not a/b/c

v-else的用法類似,v-else-if也必須緊跟在帶v-if或者v-else-if的元素之後。

另乙個用於條件性展示元素的選項是v-show指令。用法大致一樣:

不同的是帶有v-show的元素始終會被渲染並保留在 dom 中。v-show只是簡單地切換元素的displaycss property。

注意,v-show不支援元素,也不支援v-else

v-if是「真正」的條件渲染,因為它會確保在切換過程中,條件塊內的事件***和子元件適當地被銷毀和重建。

v-if也是惰性的:如果在初始渲染時條件為假,則什麼也不做——直到條件第一次變為真時,才會開始渲染條件塊。

相比之下,v-show就簡單得多——不管初始條件是什麼,元素總是會被渲染,並且只是簡單地基於 css 進行切換。

一般來說,v-if有更高的切換開銷,而v-show有更高的初始渲染開銷。因此,如果需要非常頻繁地切換,則使用v-show較好;如果在執行時條件很少改變,則使用v-if較好。

提示當v-ifv-for一起使用時,v-if具有比v-for更高的優先順序。請查閱列表渲染指南以獲取詳細資訊。

React學習 條件渲染 列表渲染 表單渲染

如下 lang en charset utf 8 name viewport content width device width,initial scale 1.0 documenttitle head div body src crossorigin script src crossorigin...

小程式學習 條件渲染和列表渲染

文件 在框架中,使用 wx if 來判斷是否需要渲染該 塊 true也可以用 wx elif 和 wx else 來新增乙個 else 塊 5 1 2 2 3因為 wx if 是乙個控制屬性,需要將它新增到乙個標籤上。如果要一次性判斷多個元件標籤,可以使用乙個 block標籤將多個元件包裝起來,並在...

vue條件渲染

判斷1 count 大於0,count的值是 5 判斷2 count的值是 判斷3 count的值是 data 當count值為0時,符合判斷3,呼叫判斷3的語句輸出 5 判斷2 count的值是 判斷3 count的值是 從結果看出,只呼叫了判斷1,說明它的執行 情況是按照 塊順序來去進行的,當前...