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>

这样就可以生效了。

相关推荐
cz追天之路10 分钟前
华为机考 ------ 识别有效的IP地址和掩码并进行分类统计
javascript·华为·typescript·node.js·ecmascript·less·css3
进击的野人15 分钟前
Vue Router 深度解析:从基础概念到高级应用实践
前端·vue.js·前端框架
北慕阳16 分钟前
健康管理前端记录
前端
1024小神16 分钟前
cloudflare的worker中的Environment环境变量和不同环境配置
前端
一只鹿鹿鹿20 分钟前
网络信息与数据安全建设方案
大数据·运维·开发语言·网络·mysql
a努力。22 分钟前
国家电网Java面试被问:慢查询的优化方案
java·开发语言·面试
栀秋66624 分钟前
从零开始调用大模型:使用 OpenAI SDK 实现歌词生成,手把手实战指南
前端·llm·openai
l1t24 分钟前
DeepSeek总结的算法 X 与舞蹈链文章
前端·javascript·算法
@小码农37 分钟前
202512 电子学会 Scratch图形化编程等级考试四级真题(附答案)
java·开发语言·算法
ejjdhdjdjdjdjjsl42 分钟前
C#类型转换与异常处理全解析
开发语言·c#