vue中v-if失效原因及解決方法
一般v-if失效都是和綁定變量有關(guān),我所知道的一般有兩種
1.綁定的變量為String類型或者其他類型
就是返回的變量類型與所需要的布爾類型不匹配。
<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那可能會造成失效
<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值去區(qū)分。
<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>這樣就可以生效了。
到此這篇關(guān)于vue中v-if失效原因及解決方法的文章就介紹到這了,更多相關(guān)vue v-if失效內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Vue?router應(yīng)用問題實戰(zhàn)記錄
vue-router是vue.js官方的路由插件,他和vue.js是深度集成的適合構(gòu)建單頁面應(yīng)用,下面這篇文章主要給大家介紹了關(guān)于Vue?router應(yīng)用問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下2022-04-04
vue內(nèi)置組件keep-alive事件動態(tài)緩存實例
這篇文章主要介紹了vue內(nèi)置組件keep-alive事件動態(tài)緩存實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-10-10
vue3中使用ant-design-vue的layout組件實現(xiàn)動態(tài)導(dǎo)航欄和面包屑功能
這篇文章主要介紹了vue3中使用ant-design-vue的layout組件實現(xiàn)動態(tài)導(dǎo)航欄和面包屑功能,基于一個新建的Vue3項目上實現(xiàn),本文結(jié)合示例代碼給大家介紹的非常詳細,需要的朋友可以參考下2023-01-01
Vue.js實現(xiàn)一個todo-list的上移下移刪除功能
這篇文章主要介紹了Vue.js實現(xiàn)一個todo-list的上移下移刪除功能,需要的朋友可以參考下2017-06-06

