简单理解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 相关文章推荐
Firefox中autocomplete=&quot;off&quot; 设置不起作用Bug的解决方法
Mar 25 Javascript
推荐40个非常优秀的jQuery插件和教程【系列三】
Nov 09 Javascript
jquery选择器原理介绍($()使用方法)
Mar 25 Javascript
jQuery中对未来的元素绑定事件用bind、live or on
Apr 17 Javascript
javascript中函数作为参数调用的方法
Feb 09 Javascript
javascript禁止超链接跳转的方法
Feb 02 Javascript
jQuery版AJAX简易封装代码
Sep 14 Javascript
微信小程序 点击控件后选中其它反选实例详解
Feb 21 Javascript
vue多层嵌套路由实例分析
Mar 19 Javascript
vue+element+Java实现批量删除功能
Apr 08 Javascript
Vue中实现权限控制的方法示例
Jun 07 Javascript
微信小游戏之使用three.js 绘制一个旋转的三角形
Jun 10 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去掉字符串的最后一个字符附substr()的用法
2011/03/23 PHP
php修改NetBeans默认字体的大小
2013/07/02 PHP
用PHP解决的一个栈的面试题
2014/07/02 PHP
php获取根域名方法汇总
2014/10/28 PHP
php将远程图片保存到本地服务器的实现代码
2015/08/03 PHP
php foreach如何跳出两层循环(详解)
2016/11/05 PHP
IE和firefox浏览器的event事件兼容性汇总
2009/12/06 Javascript
juqery 学习之三 选择器 子元素与表单
2010/11/25 Javascript
JavaScript实现算术平方根算法-代码超简单
2015/09/11 Javascript
Hammer.js+轮播原理实现简洁的滑屏功能
2016/02/02 Javascript
第五章之BootStrap 栅格系统
2016/04/25 Javascript
基于Angularjs实现分页功能
2016/05/30 Javascript
js a标签点击事件
2017/03/30 Javascript
JavaScript观察者模式(publish/subscribe)原理与实现方法
2017/03/30 Javascript
JavaScript实现移动端页面按手机屏幕分辨率自动缩放的最强代码
2017/08/18 Javascript
swiper动态改变滑动内容的实现方法
2018/01/17 Javascript
解决Jquery下拉框数据动态获取的问题
2018/01/25 jQuery
解决vue 单文件组件中样式加载问题
2019/04/24 Javascript
vue使用原生swiper代码实例
2020/02/05 Javascript
antd日期选择器禁止选择当天之前的时间操作
2020/10/29 Javascript
js回到页面指定位置的三种方式
2020/12/17 Javascript
[00:37]2016完美“圣”典风云人物:rOtk宣传片
2016/12/09 DOTA
Python使用urllib2获取网络资源实例讲解
2013/12/02 Python
Python中多线程的创建及基本调用方法
2016/07/08 Python
Python-OpenCV基本操作方法详解
2018/04/02 Python
Python中按值来获取指定的键
2019/03/04 Python
基于Python2、Python3中reload()的不同用法介绍
2019/08/12 Python
python-tornado的接口用swagger进行包装的实例
2019/08/29 Python
Python+OpenCV实现实时眼动追踪的示例代码
2019/11/11 Python
Python定义一个函数的方法
2020/06/15 Python
查找适用于matplotlib的中文字体名称与实际文件名对应关系的方法
2021/01/05 Python
萌新HTML5 入门指南(二)
2020/11/09 HTML / CSS
台湾线上百货零售购物平台:friDay购物
2017/08/18 全球购物
旅游管理专业大学生职业规划书
2014/02/27 职场文书
《火烧云》教学反思
2016/02/23 职场文书
SQL SERVER触发器详解
2022/02/24 SQL Server