简单理解Vue条件渲染


Posted in Javascript onDecember 03, 2016

一、v-if显示单个元素

注意else只能跟在v-if或者v-show后面

<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title>Vue条件渲染</title>
 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
 <script src="../js/vue.js" type="text/javascript" charset="utf-8"></script>
 </head>
 <body>
 <div class="test">
 <div v-if="isDisplay"> <!--if...else... 单个元素-->
 显示我1
 </div>
 <div v-else>
 显示我2
 </div>
 </div>
 <script type="text/javascript">
 var myVue =new Vue({
 el: ".test",
 data: {
  isDisplay: 1
 }
 })
 </script>
 </body>
</html>

输出结果是:显示我1

二、v-if显示多个元素,需配合<template>

注意else只能跟在v-if或者v-show后面

<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title>Vue条件渲染</title>
 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
 <script src="../js/vue.js" type="text/javascript" charset="utf-8"></script>
 </head>
 <body>
 <div class="test">
 <template v-if="isDisplay"> <!--if...else... 用template实现多个元素-->
 <div>显示我1</div>
 <div>显示我11</div>
 <div>显示我12</div>
 <div>显示我13</div>
 </template>
 <div v-else>
 显示我2
 </div>
 </div>
 <script type="text/javascript">
 var myVue =new Vue({
 el: ".test",
 data: {
  isDisplay: 1
 }
 })
 </script>
 </body>
</html>

输出结果: 显示我1 显示我11 显示我12 显示我13

三、v-show只支持单元素显示,不支持<template>包含的多元素

注意else只能跟在v-if或者v-show后面

<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title>Vue条件渲染</title>
 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
 <script src="../js/vue.js" type="text/javascript" charset="utf-8"></script>
 </head>
 <body>
 <div class="test">
 <div v-show="isDisplay"> <!--if...else... 单个元素,注意注意 v-show 不支持 <template> 语法-->
 显示我1
 </div>
 <div v-else>
 显示我2
 </div>
 </div>
 <script type="text/javascript">
 var myVue =new Vue({
 el: ".test",
 data: {
  isDisplay: 1
 }
 })
 </script>
 </body>
</html>

四、v-if与v-show的区别

(1)v-if是真实的渲染与卸载,只不过第一次渲染后,会将结果缓存一下

(2)v-show元素始终被编译并保留,只是简单地基于 CSS 切换

(3)总结: 如果需要频繁切换 v-show 较好,如果在运行时条件不大可能改变 v-if 较好

gitHub地址:https://github.com/lily1010/vue_learn/tree/master/lesson08

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript客户端脚本的设计和应用
Aug 21 Javascript
二行代码解决全部网页木马
Mar 28 Javascript
基于JQuery的cookie插件
Apr 07 Javascript
JS date对象的减法处理实现代码
Dec 28 Javascript
jQuery实例—选项卡的简单实现(js源码和jQuery)
Jun 14 Javascript
JS验证 只能输入小数点,数字,负数的实现方法
Oct 07 Javascript
JavaScript中数据类型转换总结
Dec 25 Javascript
JS多文件上传的实例代码
Jan 11 Javascript
js实现自动图片轮播代码
Mar 22 Javascript
Angularjs实现多图片上传预览功能
Jul 18 Javascript
jquery实现的简单轮播图功能【适合新手】
Aug 17 jQuery
Vue data的数据响应式到底是如何实现的
Feb 11 Javascript
学习vue.js条件渲染
Dec 03 #Javascript
浅谈jQuery中Ajax事件beforesend及各参数含义
Dec 03 #Javascript
jquery 判断div show的状态实例
Dec 03 #Javascript
利用浮层使select不可选的实现方法
Dec 03 #Javascript
textarea 在浏览器中固定大小和禁止拖动的实现方法
Dec 03 #Javascript
浅谈jQuery hover(over, out)事件函数
Dec 03 #Javascript
jquery 多个radio的click事件实例
Dec 03 #Javascript
You might like
php实现的通用图片处理类
2015/03/24 PHP
一个完整的php文件上传类实例讲解
2015/10/27 PHP
kindeditor 加入七牛云上传的实例讲解
2017/11/12 PHP
ThinkPHP框架实现的MySQL数据库备份功能示例
2018/05/24 PHP
php数组和链表的区别总结
2019/09/20 PHP
JS关键字球状旋转效果的实例代码
2013/11/29 Javascript
javascript数组去重方法汇总
2015/04/23 Javascript
jQuery+css3实现Ajax点击后动态删除功能的方法
2015/08/10 Javascript
JavaScript获取客户端IP的方法(新方法)
2016/03/11 Javascript
jQuery中each()、find()和filter()等节点操作方法详解(推荐)
2016/05/25 Javascript
JavaScript观察者模式(publish/subscribe)原理与实现方法
2017/03/30 Javascript
Cookies 和 Session的详解及区别
2017/04/21 Javascript
实例详解JavaScript中setTimeout函数的执行顺序
2017/07/12 Javascript
ES6/JavaScript使用技巧分享
2017/12/14 Javascript
Vue-cli配置打包文件本地使用的教程图解
2018/08/02 Javascript
详解vue axios用post提交的数据格式
2018/08/07 Javascript
详解JavaScript事件循环机制
2018/09/07 Javascript
vue实现表格过滤功能
2019/09/27 Javascript
微信小程序自定义胶囊样式
2020/12/27 Javascript
PyQT实现多窗口切换
2018/04/20 Python
python把转列表为集合的方法
2019/06/28 Python
详解Python Qt的窗体开发的基本操作
2019/07/14 Python
python使用pandas处理excel文件转为csv文件的方法示例
2019/07/18 Python
Django中ajax发送post请求 报403错误CSRF验证失败解决方案
2019/08/13 Python
python读取多层嵌套文件夹中的文件实例
2020/02/27 Python
完美解决torch.cuda.is_available()一直返回False的玄学方法
2021/02/06 Python
Geekbuying波兰:购买中国电子产品
2019/10/20 全球购物
加拿大服装和鞋类零售商:Mark’s
2021/01/04 全球购物
信息技术专业大学生个人的自我评价
2013/10/05 职场文书
《夏夜多美》教学反思
2014/02/17 职场文书
《登鹳雀楼》教学反思
2014/04/09 职场文书
安全教育演讲稿
2014/05/09 职场文书
清明节扫墓活动总结
2015/02/09 职场文书
幼儿园教师暑期培训心得体会
2016/01/09 职场文书
MongoDB orm框架的注意事项及简单使用
2021/06/20 MongoDB
python实现简单的三子棋游戏
2022/04/28 Python