当前阅读教程:Vue.JS入门教程 > Vue.js中v-show指令和v-if 指令的区别 | |
阅读(22555525) 收藏 赞(5685) 分享 | |
上一篇: Vue.js中v-show指令 | 下一篇: Vue.js 循环语句v-for |
v-show 仅是隐藏 / 显示,值为 false 时,该元素依旧存在于 dom 树中。若其原有样式设置了 display: none 则会导致其无法正常显示。 v-if 是动态添加,当值为 false 时,是完全移除该元素,即 dom 树中不存在该元素。 示例代码<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Vue.js中v-show指令和v-if 指令的区别</title> <!--加载本地vue.js的框架--> <script src="vue2.2.2.min.js"></script> </head> <body> <!--定义div区块的id的值,这里定义的值为"app",后面vue会使用该值--> <div id="app"> <!--属性xianshi1的值为true,则下面段落内容会显示在浏览器--> <div v-show="xianshi1" id="id01">show=true</div> <!--属性xianshi2的值为false,则下面段落内容不会显示在浏览器--> <div v-show="xianshi2" id="id02">show=false</div> <button onClick="my01()">第1个按钮:读取show的Dom内容</button> <!--属性xianshi1的值为true,则下面段落内容会显示在浏览器--> <div v-if="xianshi1" id="id03">if=true</div> <!--属性xianshi2的值为false,则下面段落内容不会显示在浏览器--> <div v-if="xianshi2" id="id04">if=false</div> <button onClick="my02()">第2个按钮:读取if的Dom内容</button> </div> <script> //下面是Vue.js的代码块-开始 new Vue({ el: '#app',//app为前面div区块的id的值,通过"#"号绑定 //data区域定义属性的值 data: { xianshi1:true, //定义布尔型值 xianshi2:false //定义布尔型值 //后面没有数据,则这里定义完毕后面不需要跟上逗号"," } })//Vue.js的代码块-结束 function my01(){ var tmp= ""; tmp = tmp + "id01内容:" + document.getElementById("id01").innerHTML; tmp = tmp + "| id02内容:" + document.getElementById("id02").innerHTML; //弹出标签的内容 alert(tmp); } function my02(){ //弹出标签的内容 alert("id03内容:" + document.getElementById("id03").innerHTML) //判断id为"id04"的标签是否存在 if(document.getElementById("id04")){ }else{ //标签不存在 alert("id为'id04'的标签不存在"); } } </script> </body> </html> 效果图 |
|
上一篇: Vue.js中v-show指令 | 下一篇: Vue.js 循环语句v-for |