Vue的v-if和v-show的區(qū)別圖文介紹
一、v-if和v-show區(qū)別
① v-show嚴格意義來說其實是條件隱藏,直接在頁面初始化的時候?qū)OM(對象模型)元素也初始化,因為它就是將它所在的元素添加一個display屬性為none,如果條件符合就顯示。
a. 文本框中無內(nèi)容,默認為false,所以屬性顯示

b. 文本框中輸入d,false變?yōu)閠ure,屬性消除

② v-if嚴格意義來說就是條件判斷,符合就加載DOM(對象模型)元素,不符合就不顯示。
a. 文本框中無內(nèi)容時,不加載

b. 文本框中輸入d,加載DOM

二、生命周期
v-if每切換一次就要重新走一次生命周期,比如說重新構(gòu)建內(nèi)部事件和函數(shù),而v-show則就是頁面初始時走一遍生命周期,將其加載完畢,其他時候則都不會走相關(guān)的周期了。
三、性能的差異
① v-if有更高的切換性能,比如說需要判斷多個條件時,就使用if。
② 如果需要頻繁的切換,選擇v-show,因為show是動態(tài)的改變樣式,不需要增刪DOM(對象模型)元素,大項目推薦使用show,能極大減少瀏覽器后期的操作性能。
③ show不支持<template>語法。
代碼嘗試:
Ⅰ. v-if
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>v-if</title>
<script src="/工具/vue.js"></script>
</head>
<body>
<div id="app">
快遞單號 <input type="text" v-model="id">
<button>查詢</button><br>
<div v-if="id">
<input type="text" v-model="id" style="font-size: 2rem;">
</div>
</div>
<script>
new Vue({
el: "#app",
data: {
id: '',
},
methods: {
},
})
</script>
</body>
</html>Ⅱ. v-show
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>v-show</title>
<script src="/工具/vue.js"></script>
</head>
<body>
<div id="app">
快遞單號 <input type="text" v-model="id">
<button>查詢</button><br>
<div v-show="id">
<input type="text" v-model="id" style="font-size: 2rem;">
</div>
</div>
<script>
new Vue({
el: "#app",
data: {
id: '',
},
methods: {
},
})
</script>
</body>
</html>
到此這篇關(guān)于Vue的v-if和v-show的區(qū)別圖文介紹的文章就介紹到這了,更多相關(guān)Vue的v-if和v-show區(qū)別內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
element動態(tài)路由面包屑的實現(xiàn)示例
本文主要介紹了element動態(tài)路由面包屑的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-09-09
Vue-CLI 3.X 部署項目至生產(chǎn)服務器的方法
這篇文章主要介紹了Vue-CLI 3.X 部署項目至生產(chǎn)服務器的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-03-03

