1、条件指令:
v-if,v-else-if,v-else,这三个指令与高级语言中的if,elseif,else类似
Vue的条件指令可以根据表达式的值在DOM中渲染或销毁元素的组件
v-if原理:v-if后面的条件为false时,对应的元素以及其子元素不会渲染,也就是根本不会有对应的标签出现在DOM中
运行结果:
可以实现点击按钮,切换登陆方式。
出现的问题:
如果在有输入内容的情况下,切换了类型,那么文字依旧会显示出来;但是按道理来讲,应该已经切换到另一个input了,而在那个input中,并没有输入内容
解答:Vue在运行DOM渲染时,出于性能考虑,会尽可能的复用已经存在的元素,而不是重新创建新的元素
解决方案:如果我们不希望Vue出现重复利用的问题,可以给对应的input添加key(key必须不同)
2、v-show
v-show用法和v-if类似,也用于决定一个元素是否渲染
区别:
v-if当条件为false,DOM中根本没有对应的元素
v-show当条件为false时,DOM中依旧存在其对应元素,只是将元素的display属性设置为了none而已
选择:
当需要在显示和隐藏之间切换频繁时,使用v-show
当只有一次切换时,通常使用v-if
3、v-for
遍历数组:
v-for=" item in items"
v-for="(item,index) in items"
遍历对象{key1:value1,key2:value2}:
v-for="item in object" ,item为value
v-for="(value,key) in object"
v-for="(value,key,index) in object" ,index为该属性在该对象中是第几个(0开始)