【Vue渲染】 条件渲染 | v-if | v-show | 列表渲染 | v-for

目录

前言

v-if和v-show的区别和联系

v-show和v-if如何选择

条件渲染|v-if|v-show

v-if

v-if v-else

v-if v-else-if v-else

template

v-show

列表渲染|v-for

v-for


前言

本文介绍Vue渲染,包含条件渲染v-if和v-show的区别和联系以及列表渲染v-for

v-if和v-show的区别和联系

面试高频题!!!

v-if和v-show都可以控制便签的显示与与隐藏

v-if是直接控制dom操作元素,true表示在dom上面渲染该元素,false表示不渲染

v-show是控制元素的css属性,display:none和display:block分别对应tfalse和true

v-show和v-if如何选择

v-if 有更高的切换开销,而 v-show 有更高的初始渲染开销。因此,如果需要频繁切换,则使用 v-show 较好;如果在运行时绑定条件很少改变,则 v-if 会更合适

条件渲染|v-if|v-show

v-if

<标签 v-if="表达式"></标签>

表达式可以填,常量,js表达式,Vue实例管理的xx

<div class="app"><h1>{{msg}}</h1><input type="number" v-model="num"><div v-if="num>30">炎热</div></div><script>const vm = new Vue({el:'.app',data:{msg:"v-if条件渲染",num:''}})</script>

不渲染时

v-if v-else

<div class="app"><h1>{{msg}}</h1><input type="number" v-model="num"><div v-if="num>=20">炎热</div><div v-else>寒冷</div></div><script>const vm = new Vue({el:'.app',data:{msg:"v-if条件渲染",num:''}})</script>

v-if v-else-if v-else

<div class="app"><h1>{{msg}}</h1><input type="number" v-model="num"><div v-if="num<=10">寒冷</div><div v-else-if="num<=20">凉爽</div><div v-else>炎热</div></div><script>const vm = new Vue({el:'.app',data:{msg:"v-if条件渲染",num:''}})</script>

注意,在v-if v-else 、v-if v-else-if v-else中间不能添加其他标签否则就会报错

template

如果同一条件下需要控制多个标签的显示与隐藏并且减少代码的重复,那就要引入template标签,该标签是无意义的,只起到占位作用

<div class="app"><h1>{{msg}}</h1><input type="number" v-model="num"><template v-if="num>10"><div>1</div><div>2</div><div>3</div></template></div>

满足条件渲染时

v-show

<标签 v-show="表达式"></标签>

 <div class="app"><h1>{{msg}}</h1><input type="number" v-model="num"><div v-show="num>10">凉爽</div></div><script>const vm = new Vue({el:'.app',data:{msg:'v-show',num:''}})</script>

隐藏时

直接是操作标签的style display属性,用display:none来控制

列表渲染|v-for

v-for

语法格式

<标签 v-for="(每一项,索引) in 数组名">

直接使用插值语法就可以将数组中的每一项拿出来

<div class="app"><div v-for="(item,index) in arr">{{index}}--{{item}}</div></div><script>const vm = new Vue({el:'.app',data:{msg:"v-for列表渲染",arr:[1,2,3,4,5,6,7,8,9]}})</script>

数组中以对象形式

<div class="app"><div v-for="(item,index) in arr">{{item.name}}--{{item.age}}</div></div><script>const vm = new Vue({el:'.app',data:{msg:"v-for列表渲染",arr:[{name:'zhangsan',age:20},{name:'lisi',age:22},{name:'王五',age:25},]}})</script>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/190938.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

模块一、任务一.数据分析概述

一、module1 预测未来-总统大选 样本偏差 二、module2 优化现状-化妆品销售 1、数据分析师从业务类型上划分 2、目标&#xff1a;总销量 达到 目标销量 3、固定基本流程 &#xff08;1&#xff09;确定 一、目标值节节升高&#xff0c;是否合理&#xff1f;根据什么定的&…

Cadence virtuoso drc lvs pex 无法输入

问题描述&#xff1a;在PEX中的PEX options中 Ground node name 无法输入内容。 在save runset的时候也出现无法输入名称的情况 解决办法&#xff1a; copy一个.bashrc文件到自己的工作目录下 打开.bashrc文件 在.bashrc中加一行代码&#xff1a;unset XMODIFIERS 在终端sour…

量化交易:开发传统趋势策略之---双均线策略

本文以双均线策略为例&#xff0c;描述如何在BigQuant策略平台上&#xff0c;开发一个传统的趋势跟踪策略&#xff0c;以更好地理解BigQuant回测机制。 双均线策略的策略思想是&#xff1a;当短期均线上穿长期均线时&#xff0c;形成金叉&#xff0c;此时买入股票。当短期均线…

csapp深入理解计算机系统 bomb lab(1)phase_1

实验目的&#xff1a;进一步了解机器级代码&#xff0c;提高汇编语言、调试器和逆向工程等方面原理与技能的掌握。 实验环境&#xff1a;C、linux 实验获取&#xff1a;进入csapp官网&#xff0c;点击linux/x86-64 binary bomb下载实验压缩包。 实验说明&#xff1a;一共有6…

DRF纯净版项目搭建和配置

一、安装模块和项目 1.安装模块 pip install django pip install djangorestframework pip install django-redis # 按需安装 2.开启项目和api (venv) PS D:\pythonProject\env_api> django-admin startproject drf . (venv) PS D:\pythonProject\env_api> python ma…

maptalks三维地图网址

三维 地址: http://examples.maptalks.com/examples/cn/gltf/gltf-marker/shader

记一次服务器配置文件获取OSS

一、漏洞原因 由于网站登录口未做双因子校验,导致可以通过暴力破解获取管理员账号,成功进入系统;未对上传的格式和内容进行校验,可以任意文件上传获取服务器权限;由于服务器上配置信息,可以进一步获取数据库权限和OSS管理权限。二、漏洞成果 弱口令获取网站的管理员权限通…

vue解除数据双向绑定

let obj JSON.parse(JSON.stringify(data));例如&#xff0c;table列表中&#xff0c;点击编辑时&#xff0c;可对val进行如上操作来解除双向绑定

从0开始学习JavaScript--JavaScript DOM操作与事件处理

在前端开发中&#xff0c;DOM&#xff08;文档对象模型&#xff09;是一个至关重要的概念&#xff0c;它为JavaScript提供了一种与HTML和XML文档交互的方法。本文将深入探讨DOM的概念与作用&#xff0c;以及JavaScript与DOM之间的密切关系。 DOM的概念与作用 DOM是什么&#…

python正则匹配示例

需要再如下图的txt中把 1100开头的订单号 提取出来&#xff0c;这个时候需要用到正则表达式 import rewith open(source.txt, r) as file:lines file.readlines()target \1100 target_lines [] for line in lines:if line.find(target) ! -1: print("match string…

基于PLC的自动洗碗机控制系统(论文+源码)

1.系统设计 本课题基于PLC的自动洗碗机控制系统&#xff0c;在此将主要功能设定如下&#xff1a; 通过上下喷头旋转喷水湿润餐具&#xff1b;添加洗涤剂&#xff08;洗碗液&#xff09;&#xff1b;上下喷头喷水洗涤餐具&#xff1b;排出污水&#xff1b;往碗碟上喷洒更多的水…

八股文-TCP的四次挥手

TCP&#xff08;Transmission Control Protocol&#xff09;是一种面向连接的、可靠的传输协议&#xff0c;它的连接的建立和关闭过程都是经过精心设计的。在TCP连接关闭时&#xff0c;使用四次挥手来保证数据的完整传输和连接的正常终止。 漫画TCP的四次挥手 第一次挥手&#…