vue笔记-条件渲染
条件渲染
1:指令v-if单独使用和结合v-else
//单独使用
<h1 v-if="ok">Yes</h1>
//组合使用
<h1 v-if="ok">Yes</h1>
<h1 v-else>No</h1> //切换多个元素 放在template标签里面
<template v-if="ok">
<h1>Title</h1>
<p>Paragraph 1</p>
<p>Paragraph 2</p>
</template> v-else,v-else-if 指令不能单独使用,必须跟在v-if 或者 v-else-if之后
2:Vue 会尽可能高效地渲染元素,通常会复用已有元素而不是从头开始渲染
注意:1说明v-if指令是渲染标签,而不是单纯的对标签进行隐藏与显示
所以切换的时候他去重新渲染,然后发现以前渲染的元素(input和label)可以复用,那他
就只修改几个值 //通过添加key来管理可复用的元素,来阻止元素的复用,这里label没有
加,所以只是将Username改为Email <template v-if="loginType === 'username'">
<label>Username</label>
<input placeholder="Enter your username" key="username-input">
</template>
<template v-else>
<label>Email</label>
<input placeholder="Enter your email address" key="email-input">
</template>
3:v-show
的元素始终会被渲染并保留在 DOM 中。v-show
只是简单地切换元素的 CSS 属性 display,
v-show
不支持 <template>
元素,也不支持 v-else.
v-if
有更高的切换开销,而 v-show
有更高的初始渲染开销。因此,如果需要非常频繁地切换,则使用 v-show
较好;如果在运行时条件很少改变,则使用 v-if
较好
vue笔记-条件渲染的更多相关文章
- vue的条件渲染和列表渲染介绍
一.条件渲染 1.v-if语句 <div v-if="seen">hahahah</div> <!-- v-if插入或者删除元素的指令 --> ...
- 前端框架之Vue(5)-条件渲染
v-if 在字符串模板中,比如 Django Template语法中,我们得像这样写一个条件块: <!-- Handlebars 模板 --> {%if 1%} <h1>Yes ...
- vue基础——条件渲染
一.v-if 1.1.v-if,v-else 在字符串模板中,比如Handlebars,我们得像这样写一个条件块: HTML <!-- Handlebars 模板 --> {{#if ok ...
- Vue v-if条件渲染
1.简单的v-if指令,代码如下 <!DOCTYPE html> <html> <head lang="en"> <meta charse ...
- vue基础---条件渲染
(1)v-if条件渲染 v-if 指令用于条件性地渲染一块内容.这块内容只会在指令的表达式返回 truthy 值的时候被渲染. 可以用 v-else 添加一个“else 块”: ①表达式 <di ...
- VUE:条件渲染和列表渲染
条件渲染 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <titl ...
- vue.js条件渲染 v-if else-if v-for
v-if: 在字符串模板中,如 Handlebars ,我们得像这样写一个条件块: {{#if ok}} <!-- Handlebars 模板 --> <h1>Yes</ ...
- Vue.js 条件渲染 v-if、v-show、v-else
v-if v-if 完全根据表达式的值在DOM中生成或移除一个元素.如果v-if表达式赋值为false,那么对应的元素就会从DOM中移除:否则,对应元素的一个克隆将被重新插入DOM中. 1 2 3 ...
- 第六十三篇:Vue的条件渲染与列表渲染
好家伙, 1.条件渲染v-if 1.1.v-if基本使用 <body> <div id="app"> <p v-if="flag" ...
随机推荐
- 【JS】使用变量作为object的key-方法汇总
1.方法一 var a = 'id'; var str = '{'+a+' : 12}' var obj = eval("("+str+")"); 结果: ob ...
- GIT-windows系统下Gitblit的使用方式
GIT-windows系统下Gitblit的正确打开方式 1. 打开页面. 在配置好Gitblit后,打开可视化界面. 2. 创建用户 点击右上角添加用户,进入明细页面,填写常规信息. 创建用户(账号 ...
- Thunk
Thunk https://en.wikipedia.org/wiki/Thunk In computer programming, a thunk is a subroutine used to i ...
- Springboot自定义异常处理
1.自定义异常类 import lombok.Data; @Data public class UserException extends RuntimeException { private Lon ...
- [译]Async/Await - Best Practices in Asynchronous Programming
原文 避免async void async void异步方法只有一个目的:使得event handler异步可行,也就是说async void只能用于event handler. async void ...
- 将JSON转换成MAP的工具类
package com.xxxx.util; import java.io.BufferedReader; import java.io.InputStream; import java.io.Inp ...
- RLException: XXX is neither a launch file in package XXX nor is XXX a launch file name问题解决
在运行roslaunch时出现了类似下面的错误: RLException: XXX is neither a launch file in package XXX nor is XXX a launc ...
- mysql8.0卸载干净--win10
本文介绍,在Windows10系统下,如何彻底删除卸载MySQL... 1>停止MySQL服务开始->所有应用->Windows管理工具->服务,将MySQL服务停止.2> ...
- DC综合简单总结(1)
DC综合简单总结(1) *****************set_dont_touch和set_dont_touch_network**************** ? 在综合的过程中,为了不让D ...
- 看我如何粘贴别人代码--socketserver
源码执行流程 自己模仿一个(提取代码) 服务器类 import socket import threading import selectors class TCPServer: def __init ...