Vue 数据绑定 input v-if 切换后 取值不对

1、当一个页面有多个类型输入框时,联系人是 password 类型,联系地址是text类型,

  (1)当切换regType==1时联系地址还是password类型

(2)当限制输入长度时input的value值和v-model取得值也是不一样的

<div class="lfItem" v-if="regType === '0'">
  <input type="password" v-model="formData.contact" maxlength="6" placeholder="请输入联系人" />
</div>
<div class="lfItem" v-if="regType === '1'"> 
<input type="text" v-model="formData.address" placeholder="请输入联系地址" /> </div>

为什么会出现这个问题?

因为 Vue 在进行 DOM 渲染时,出于性能考虑,会尽可能的复用已经存在的元素,而不是重新创建新的元素。

若是想要解决这个问题,则在 input 中指定一个唯一的 key 即可,记住:key 是要不相等的一个值

 

posted @   xiaoxiaoxigua  阅读(119)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
历史上的今天:
2013-08-11 ios瀑布流
点击右上角即可分享
微信分享提示