Vue學習的第六天

條件渲染


v-if

<h3 v-if="ok">Yes</h3>

<h3 v-else>No</h3>

#在<template>元素上使用v-if條件渲染分組

因為v-if是一個指令,所以必須將它添加到一個元素上

<template v-if="ok">

? ? <h3>title</h3>

? ? <p>paragraph</p>

</template>

#v-else

可以使用v-else指令來表示v-if的else塊

<div v-if="Math.random() > 0.5">

? ? Now? you see

</div>

<div v-else>

? ? Now you?

</div>

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

#v-else-if

充當v-if的“else-if塊”惧眠,可以連續(xù)使用

<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>

類似于?v-else氛魁,v-else-if?也必須緊跟在帶?v-if?或者?v-else-if?的元素之后

#用key管理可復用的元素

Vue會盡可能高效地渲染元素捶码,通常會復用已有元素而不是從頭開始渲染

那么在上面的代碼中切換?loginType?將不會清除用戶已經(jīng)輸入的內(nèi)容或链。因為兩個模板使用了相同的元素株扛,不會被替換掉——僅僅是替換了它的?placeholder洞就。

<template v-if="loginType === 'username'">

? ? <label>UserName</label>

? ? <input placeholder="Enter your username">

</template>

<template v-else>

? ? ?<label>Email</label>

? ? ?<input placeholder="Enter your email address">

</template>

//現(xiàn)在,每次切換時油昂,輸入框都將被重新渲染冕碟。

<template v-if="loginType === 'username'">

? ? ?<label>UserName</label>

? ? ?<input placeholder="Enter your username" key="username-input">

</template>

<template v-else>

? ? ?<label>Email</label>

? ? ?<input placeholder="Enter you email address" key="email-input">

</template>

? ? UserName? ? ? ? ?Email? ? ?

v-show

v-show指令根據(jù)條件是否展示元素. 注意,v-show?不支持<template>元素首尼,也不支持v-else??元素,也不支持?v-else

<h1 v-show="ok"></h1>

v-if? vs? v-show

v-if?是“真正”的條件渲染迎捺,因為它會確保在切換過程中條件塊內(nèi)的事件監(jiān)聽器和子組件適當?shù)乇讳N毀和重建凳枝。

v-if?也是惰性的:如果在初始渲染時條件為假岖瑰,則什么也不做——直到條件第一次變?yōu)檎鏁r锭环,才會開始渲染條件塊泊藕。

相比之下,v-show?就簡單得多——不管初始條件是什么玫锋,元素總是會被渲染讼呢,并且只是簡單地基于 CSS 進行切換悦屏。

一般來說,v-if?有更高的切換開銷甫贯,而?v-show?有更高的初始渲染開銷叫搁。因此渴逻,如果需要非常頻繁地切換音诫,則使用?v-show?較好竭钝;如果在運行時條件很少改變蜓氨,則使用?v-if?較好穴吹。

v-if 與 v-for 一起使用

當?v-if?與?v-for?一起使用時港令,v-for?具有比?v-if?更高的優(yōu)先級顷霹。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末遥昧,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子永脓,更是在濱河造成了極大的恐慌常摧,老刑警劉巖落午,帶你破解...
    沈念sama閱讀 216,544評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件板甘,死亡現(xiàn)場離奇詭異盐类,居然都是意外死亡在跳,警方通過查閱死者的電腦和手機猫妙,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來彼哼,“玉大人敢朱,你說我怎么就攤上這事∑烀牵” “怎么了岸梨?”我有些...
    開封第一講書人閱讀 162,764評論 0 353
  • 文/不壞的土叔 我叫張陵洛巢,是天一觀的道長。 經(jīng)常有香客問我锹锰,道長,這世上最難降的妖魔是什么园蝠? 我笑而不...
    開封第一講書人閱讀 58,193評論 1 292
  • 正文 為了忘掉前任怠蹂,我火速辦了婚禮城侧,結(jié)果婚禮上豆茫,老公的妹妹穿的比我還像新娘屋摇。我一直安慰自己,他們只是感情好肤京,可當我...
    茶點故事閱讀 67,216評論 6 388
  • 文/花漫 我一把揭開白布白修。 她就那樣靜靜地躺著肯骇,像睡著了一般。 火紅的嫁衣襯著肌膚如雪漾脂。 梳的紋絲不亂的頭發(fā)上骨稿,一...
    開封第一講書人閱讀 51,182評論 1 299
  • 那天哥桥,我揣著相機與錄音判呕,去河邊找鬼。 笑死梦抢,一個胖子當著我的面吹牛奥吩,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播端衰,決...
    沈念sama閱讀 40,063評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼十艾,長吁一口氣:“原來是場噩夢啊……” “哼荤牍!你這毒婦竟也來了康吵?” 一聲冷哼從身側(cè)響起同辣,我...
    開封第一講書人閱讀 38,917評論 0 274
  • 序言:老撾萬榮一對情侶失蹤跌前,失蹤者是張志新(化名)和其女友劉穎抵乓,沒想到半個月后灾炭,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蜈出,經(jīng)...
    沈念sama閱讀 45,329評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,543評論 2 332
  • 正文 我和宋清朗相戀三年卵洗,在試婚紗的時候發(fā)現(xiàn)自己被綠了十绑。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,722評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡坦报,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出字管,到底是詐尸還是另有隱情,我是刑警寧澤硫戈,帶...
    沈念sama閱讀 35,425評論 5 343
  • 正文 年R本政府宣布霜幼,位于F島的核電站罪既,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏猩谊。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,019評論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望撤防。 院中可真熱鬧辜膝,春花似錦、人聲如沸忱辅。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至谈为,卻和暖如春伞鲫,著一層夾襖步出監(jiān)牢的瞬間粘茄,已是汗流浹背柒瓣。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評論 1 269
  • 我被黑心中介騙來泰國打工芙贫, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人拐辽。 一個月前我還...
    沈念sama閱讀 47,729評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像赶诊,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子出吹,可洞房花燭夜當晚...
    茶點故事閱讀 44,614評論 2 353

推薦閱讀更多精彩內(nèi)容