1.一般元素状态定义一个变量控制,if 条件 false移除Html元素(一次切换)
2.v-show 当条件会false会隐藏元素display:none (频繁切换)
一、登陆切换案例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
<div id="app">
<div>
<span v-if="isShow">
用户QQ:<input type="text" id="qq" placeholder="QQ登陆" key="1">
</span>
<span v-else>
用户微信:<input type="text" id="weixin" placeholder="微信登陆" key="2">
</span>
<button @click=show>切换</button>
</div>
</div>
</body>
<script>
const app = new Vue({
el: '#app',
data: {
isShow: true
},
methods: {
show: function () {
this.isShow = !this.isShow
}
}
})
</script>
</html>
其中会产生元素复用问题
DOM元素加载到内存里面,元素相同会复用。使用 key = ’‘ 标识符解决