美文网首页
v-if和v-show小结

v-if和v-show小结

作者: 广告位招租 | 来源:发表于2019-02-21 11:59 被阅读0次

v-if

用于条件性的渲染一块内容,该块内容只有在指令的表达式返回值为true的时候被渲染

<template v-if="loginType === 'username'">
  <label>Username</label>
  <input placeholder="Enter your username">
</template>
<template v-else>
  <label>Email</label>
  <input placeholder="Enter your email address">
</template>

vue会尽可能的高效的渲染元素,以上代码执行的时候,input中输入的内容将不会被替换,被替换的仅仅是placeholder

如果不想复用他们,想保持两个元素是独立的,只需要在元素上加上key值

<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>

如此每次切换的时候元素都会被重新渲染

v-if和v-for一起使用

v-for将会比v-if有更高的优先级,v-if将会分别重复运行于每个v-for循环中

v-show

带有v-show的元素将会始终被渲染在DOM中,只是简单的切换了元素的css样式的dispaly

总结

  1. v-if是真正的条件渲染,他会确保在切换过程中条件块内的时间和子组件被销毁和重建(组件被重建将会调用created)
  2. v-show不论如何,都会被渲染在DOM中,当条件为真值时,将会修改条件的css样式
  3. v-if有更高的切换开销,v-show有更高的初始渲染开销

相关文章

  • react 条件渲染

    条件渲染相当于vue的v-if 和 v-show 小结if else if(A){a}else{b} 通过...

  • vue2.0基础(一、内部指令)

    指令 1、条件判断 v-if v-else v-show ### v-if 和v-show的区别: v-if:...

  • 2018-05-22 指令

    v-if && v-show && v-else v-if和v-show的区别:v-if 判断是否加载,如果时fa...

  • v-show v-if v-bind 和display

    一、v-show和v-if:v-show和v-if都可以控制元素的显示或隐藏,但是v-show是用display控...

  • Vue学习笔记二:Vue基础语法

    1.模板语法 2.属性绑定 3.条件渲染 v-if & v-show v-if 和v-show的区别:v-if: ...

  • vue2.0题目

    1 .v-show和v-if的区别 v-show 通过css display 控制显示和隐藏 v-if 组件真正的...

  • Vue2学习笔记:vue条件渲染

    一、v-if ①template v-if ②v-else ③v-show 二、v-if vs v-show 学好...

  • vue基础

    v-show和v-if v-show跟v-if都是做条件隐藏跟显示用的, v-show是根据样式进行显示隐藏dis...

  • v-if和v-show小结

    v-if 用于条件性的渲染一块内容,该块内容只有在指令的表达式返回值为true的时候被渲染 vue会尽可能的高效的...

  • 前端性能优化

    一、代码层面的优化 (1)v-if 和 v-show 区分使用场景 v-if是DOM的销毁和重建,v-show只是...

网友评论

      本文标题:v-if和v-show小结

      本文链接:https://www.haomeiwen.com/subject/uttryqtx.html