• 设为首页
  • 加入收藏
  • 我要投稿
  • 联系站长
  • 网站模板技术交流
当前位置:模板网首页 > 建站教程 > vue教程,AngularJS教程 >  vue使用v-if时的注意点正文

vue使用v-if时的注意点

作者:网页模板
类型:图文教程
点击次数:
发布时间:2019-01-03 17:27
分享到:
v-if和v-else或v-else-if之间不能添加其他元素。

以下是错误事例
<span v-if="type==1">错误示范</span>
<span>哈哈哈</span>
<p v-else>嘿嘿嘿</p>
以下是正确实例
<span v-if="type==1">正确示范</span>
<p v-else>嘿嘿嘿</p>
<span>哈哈哈</span>
v-if 为同一类型组件(或同一模板的dom树)来做显示和隐藏时,最好在最外层添加key属性来设定唯一标识,否则容易出问题
<template v-if="type=== 'username'">
  <label>用户名</label>
  <input placeholder="输入用户名">
</template>
<template v-else>
  <label>邮箱</label>
  <input placeholder="输入邮箱">
</template>
以上代码切换时,仅仅切换placeholder,而不会重新渲染,因为他用了相同的模板
若v-if切换的是逻辑复杂的控件时,切换时不重新渲染极易出问题
需要给要重新渲染的控件添加一个key属性,来唯一标识该控件,被key标识后会重新渲染。实例如下
<template v-if="type=== 'username'" key="1">
  <label>用户名</label>
  <input placeholder="输入用户名">
</template>
<template v-else  key="2">
  <label>邮箱</label>
  <input placeholder="输入邮箱">
</template>

(责任编辑:网页模板)
  • 本文标签:
  • v-if
vue的注意规范之v-if 与 v-for 一起使用
vant Cell单元格右侧显示文字的方法