zoukankan      html  css  js  c++  java
  • 知识汇总11~vue中v-if使用时需要注意的点

      1. v-if和v-else或v-else-if之间不能添加其他元素。   
        以下是错误事例
        1. <span v-if="type==1">错误示范</span>
        2.  <span>哈哈哈</span>
        3.  <p v-else>嘿嘿嘿</p>

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

        1.  <template v-if="type=== 'username'" key="1">
        2.  <label>用户名</label>
        3.  <input placeholder="输入用户名">
        4.  </template>
        5.  <template v-else key="2">
        6.  <label>邮箱</label>
        7.  <input placeholder="输入邮箱">
        8.  </template>
  • 相关阅读:
    this.props.children 踩坑
    3.webpack配置
    2.项目初始化配置
    1项目库的建立
    Idea-代码背景设置
    SpringBoot+nacos-环境切换-配置文件
    Docker-镜像地址无法访问
    端口-映射、开放、定义
    Linux-命令
    Nginx-命令
  • 原文地址:https://www.cnblogs.com/sunshineForFuture/p/9394592.html
Copyright © 2011-2022 走看看