【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

{{msg}}

炎热

【Vue渲染】 条件渲染 | v-if | v-show | 列表渲染 | v-for_第1张图片

不渲染时

【Vue渲染】 条件渲染 | v-if | v-show | 列表渲染 | v-for_第2张图片

v-if v-else

{{msg}}

炎热
寒冷

【Vue渲染】 条件渲染 | v-if | v-show | 列表渲染 | v-for_第3张图片

【Vue渲染】 条件渲染 | v-if | v-show | 列表渲染 | v-for_第4张图片

v-if v-else-if v-else

{{msg}}

寒冷
凉爽
炎热

【Vue渲染】 条件渲染 | v-if | v-show | 列表渲染 | v-for_第5张图片

【Vue渲染】 条件渲染 | v-if | v-show | 列表渲染 | v-for_第6张图片

【Vue渲染】 条件渲染 | v-if | v-show | 列表渲染 | v-for_第7张图片

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

【Vue渲染】 条件渲染 | v-if | v-show | 列表渲染 | v-for_第8张图片

template

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

{{msg}}

满足条件渲染时

【Vue渲染】 条件渲染 | v-if | v-show | 列表渲染 | v-for_第9张图片

v-show

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

 

{{msg}}

凉爽

【Vue渲染】 条件渲染 | v-if | v-show | 列表渲染 | v-for_第10张图片

隐藏时

【Vue渲染】 条件渲染 | v-if | v-show | 列表渲染 | v-for_第11张图片

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

列表渲染|v-for

v-for

语法格式

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

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

{{index}}--{{item}}

【Vue渲染】 条件渲染 | v-if | v-show | 列表渲染 | v-for_第12张图片

数组中以对象形式

{{item.name}}--{{item.age}}

【Vue渲染】 条件渲染 | v-if | v-show | 列表渲染 | v-for_第13张图片

你可能感兴趣的:(vue,vue.js,javascript,ecmascript)