v-if失效原因

一般v-if失效都是和绑定变量有关,我所知道的一般有两种

1.绑定的变量为String类型或者其他类型

就是返回的变量类型与所需要的布尔类型不匹配。

html 复制代码
<template>
     <div>
       <div id="container" ref="container" v-if='type'></div>
    </div>
</template>
<script setup lang="ts">
  const type=ref('false')
</script>

就像这种,我们得到的type的值是"false"而不是false,两者之间类型不同。如果不确定变量类型,就用typeof去打印。

2.两个相似的组件,v-if无法就行判断

对于两个很相似的组件,不管自定义还是还是本身的,如果只是用v-if那可能会造成失效

html 复制代码
<template>
     <div>
       <el-button  v-if='type'></el-button>
       <el-button  v-if='!type'></el-button>
    </div>
</template>
<script setup lang="ts">
  const type=ref(false)
</script>

就像这样的,但是我们可以通过添加key值去区分。

html 复制代码
<template>
     <div>
       <el-button  v-if='type' key=1></el-button>
       <el-button  v-if='!type' key=2></el-button>
    </div>
</template>
<script setup lang="ts">
  const type=ref(false)
</script>

这样就可以生效了。

相关推荐
光影少年12 小时前
react navite 安卓iOS 打包、签名、环境区分
前端·react native·react.js
coderCN12 小时前
Nodejs 第三十四章 数据库(表达式和函数、子查询和连表)
前端·node.js
不正经学生12 小时前
C语言动态内存管理(上):堆上的自由与责任
c语言·开发语言·c++·算法·面试
AI情绪识别开源13 小时前
检信AI高一分班分科智选评估系统 v2.0测试报告
开发语言·数据结构·人工智能·科技
纯.Pure_Jin(g)13 小时前
靶场PHP函数整理+防御方式
开发语言·php·ctf
ssshooter13 小时前
AI 时代你不能不知道的 git worktree
前端·后端·面试
观测云13 小时前
AI时代的用户访问监测:观测云带你身临其境体验用户与前端UI交互旅程
前端·可观测性·观测云·rum
海兰13 小时前
【 Python 量化交易】第3章:金融基础概念
开发语言·python·金融
喵本喵叁肆13 小时前
06-M6-部门过滤与综合研判-从问答机到研判助手
前端·javascript·jquery
一木 之林14 小时前
三.C++ 内存管理(进阶)(二)
开发语言·arm开发·c++