• v-if的使用


    v-if、v-else、v-elseif

    v-if用于条件判断,判断Dom元素是否显示。

    1. DOCTYPE html>
    2. Document
    3. isFlag为true显示这个

    4. isShow为true是显示这个

    5. 小于18岁未成年
    6. 大于18岁小于60岁正值壮年
    7. 大于60岁,暮年
    1. 单独使用v-if,变量为布尔值,为true才渲染Dom

    2. v-show的变量也是布尔值,为true才显示内容,类似css的display

    3. v-if、v-else、v-else-if联合使用相当于if、elseif、else,但是在条件比较多的时候建议使用计算属性。

    v-if的demo

    ​ 在登录网站是经常可以选择使用账户名或者邮箱登录的切换按钮。要求点击按钮切换登录方式。

    1. DOCTYPE html>
    2. Document
  • ​ 使用v-ifv-else选择渲染指定的Dom,点击按钮对isUser变量取反。

    这里有个小问题,如果已经输入了账号了,此时想切换到邮箱输入,输入框未自己清空。

     

    ​ 这里需要了解一下vue底层操作,此时input输入框值被复用了。

    1. vue在进行DOM渲染是,处于性能考虑,会复用已经存在的元素,而不是每次都创建新的DOM元素。

    2. 在上面demo中,Vue内部发现原来的input元素不再使用,所以直接将其映射对应虚拟DOM,用来复用。

    3. 如果不希望出现类似复用问题,可以给对应的dom元素加上key值,并保证key不同。

      
      

    v-show

    ​ v-if 在首次渲染的时候,如果条件为假,什么也不操作,页面当作没有这些元素。当条件为真的时候,开始局部编译,动态的向DOM元素里面添加元素。当条件从真变为假的时候,开始局部编译,卸载这些元素,也就是删除。

    ​ v-show 不管条件是真还是假,第一次渲染的时候都会编译出来,也就是标签都会添加到DOM中。之后切换的时候,通过display: none;样式来显示隐藏元素。可以说只是改变css的样式,几乎不会影响什么性能。

    1. DOCTYPE html>
    2. Document
    3. v-show只是操作元素的style属性display

    4. v-if是新增和删除dom元素

  • 相关阅读:
    小度打头阵,百度大模型能否“赋能万物”?
    JAVA幼儿园管理系统计算机毕业设计Mybatis+系统+数据库+调试部署
    爱奇艺 CTR 场景下的 GPU 推理性能优化
    一站式数据可观测性平台 Datavines 正式开源啦
    谷歌AI机器人Bard发布强大更新,支持插件功能并增强事实核查;全面整理高质量的人工智能、机器学习、大数据等技术资料
    数据结构:归并排序
    python实现彭曼公式计算潜在蒸散发ET0
    日常 - UX 响应 Nginx 502 Bad Gateway
    Vim的快速入门
    java基于微信小程序的寻医问药 医院预约挂号系统 uniapp小程序
  • 原文地址:https://blog.csdn.net/m0_59359854/article/details/126126360