简单理解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 相关文章推荐
jquery 简单导航实现代码
Sep 11 Javascript
jQuery库与其他JS库冲突的解决办法
Feb 07 Javascript
老鱼 浅谈javascript面向对象编程
Mar 04 Javascript
formValidator3.3的ajaxValidator一些异常分析
Jul 12 Javascript
Extjs 3.3切换tab隐藏相应工具栏出现空白解决
Apr 02 Javascript
Jquery之Bind方法参数传递与接收的三种方法
Jun 24 Javascript
打造自己的jQuery插件入门教程
Sep 23 Javascript
javascript监听页面刷新和页面关闭事件方法详解
Jan 09 Javascript
jQuery加载及解析XML文件的方法实例分析
Jan 22 Javascript
Bootstrap表格使用方法详解
Feb 17 Javascript
jQuery制作input提示内容(兼容IE8以上)
Jul 05 jQuery
小程序实现层叠卡片滑动效果
Aug 26 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
新手菜鸟必读:session与cookie的区别
2013/08/22 PHP
zf框架的db类select查询器join链表使用示例(zend框架)
2014/03/14 PHP
thinkphp实现面包屑导航(当前位置)例子分享
2014/05/10 PHP
PHP操作FTP类 (上传、下载、移动、创建等)
2016/03/31 PHP
PHP命名空间namespace用法实例分析
2016/09/27 PHP
Zend Framework分发器用法示例
2016/12/11 PHP
PHP操作Postgresql封装类与应用完整实例
2018/04/24 PHP
漂亮的仿flash菜单,来自蓝色经典
2006/06/26 Javascript
Extjs 几个方法的讨论
2010/01/28 Javascript
innerHTML,outerHTML,innerText,outerText的用法及区别解析
2013/12/16 Javascript
点击弹出层效果&amp;弹出窗口后网页背景变暗效果的实现代码
2014/02/10 Javascript
DOM 高级编程
2015/05/06 Javascript
MVVM模式中ViewModel和View、Model有什么区别?
2015/06/19 Javascript
javascript中window.open在原来的窗口中打开新的窗口(不同名)
2015/11/15 Javascript
vue2 如何实现div contenteditable=“true”(类似于v-model)的效果
2017/02/08 Javascript
JS对象深度克隆实例分析
2017/03/16 Javascript
利用Vue.js实现求职在线之职位查询功能
2017/07/03 Javascript
BootStrap下的弹出框加载select2框架失败的解决方法
2017/08/31 Javascript
详解用Node.js写一个简单的命令行工具
2018/03/01 Javascript
从零开始搭建webpack+react开发环境的详细步骤
2018/05/18 Javascript
2种在vue项目中使用百度地图的简单方法
2018/09/28 Javascript
react 组件传值的三种方法
2019/06/03 Javascript
[03:43]2014DOTA2西雅图国际邀请赛 newbee战队巡礼
2014/07/07 DOTA
Ubuntu下使用Python实现游戏制作中的切分图片功能
2018/03/30 Python
用python3教你任意Html主内容提取功能
2018/11/05 Python
解决python中画图时x,y轴名称出现中文乱码的问题
2019/01/29 Python
《桃花心木》教学反思
2014/02/17 职场文书
家长写给孩子的评语
2014/04/18 职场文书
暑期政治学习心得体会
2014/09/02 职场文书
幼儿园大班见习报告
2014/10/31 职场文书
事业单位个人总结
2015/02/12 职场文书
证券区域经理岗位职责
2015/04/10 职场文书
4S店销售内勤岗位职责
2015/04/13 职场文书
2019公司借款合同范本2篇!
2019/07/24 职场文书
python获取对象信息的实例详解
2021/07/07 Python
windows11选中自动复制怎么开启? Win11自动复制所选内容的方法
2022/07/23 数码科技