条件渲染与列表渲染

条件渲染

条件渲染,就满足一定的条件以后才会渲染。

v-if

v-if指令类似于,js中的if语句,当条件满足时才会执行

v-if //ok的值为true,span标签才会被渲染

var vm = new Vue({
       el: '#app',
       data: {
           ok: true,
           no: true,
           type: 'c',
           toggle: true
       }
   });

v-else

v-else指令,类似于js中的else语句,当v-if条件不成立是,v-else就会渲染。

v-if
v-else //当ok 的值为false,是渲染

v-else必须紧跟着在v-if或者v-else-if的到后面,否则不会被识别。

v-else-if

2.1.0新增加的指令,类似于js中的else if,可以链式使用多次。

a

b

not a and b

v-else-if必须紧跟着在v-if或者v-else-if的到后面,否则不会被识别。

用key管理可复用的元素

vue会尽可能的高效的渲染元素,通常会复用已有元素而不会从头渲染

 

上面例子因为两个p标签用用了相同的元素,不会被替换掉,仅仅是替换了他的placeholder

username显示时,输入框里面输入的1

切换到,email是1任然存在,说明input是复用之前的input

当我们不想复用他们时,只要加上唯一的key属性

加上可以以后,在username上输入了1
切换到email下,1不见了,说明两个input不是同一个,没有复用之前的了

注意,

v-show

v-show与v-if的用法几乎一致

v-show

v-show VS v-if

  • v-show不支持