当前位置: 首页 > news >正文

微信小程序 密码框改为text后不可见,需要点击一下

这个问题是做项目的时候碰到的。

密码框常规写法:

<view class="inputBox"><view class="input-container"><input type="{{inputType}}" placeholder="请输入密码" data-id="passwordValue" bindinput="getinput" value="{{passwordValue}}" placeholder-style="color:#ccc8c8" /><image class="eye-icon" src="{{isPasswordVisible ? '/images/open-eye.png' : '/images/closed-eye.png'}}" bind:touchstart="onEyeTouchStart" bind:touchend="onEyeTouchEnd"/></view>
</view>

函数:onEyeTouchStart 和 onEyeTouchEnd 的实现:

onEyeTouchStart() {const passwordValue = this.data.passwordValue;this.setData({inputType: 'text',isPasswordVisible: true});},onEyeTouchEnd() {const passwordValue = this.data.passwordValue;this.setData({inputType: 'password',isPasswordVisible: false,});},

然后就会出现以上的问题(真机上),后来查了不少资料,有个方法可以解决这个问题:

那就是改变input属性后刷新一下,我改进了一下,确实解决了这个问题,特此记录。

改进后的代码:

onEyeTouchStart() {const passwordValue = this.data.passwordValue;this.setData({inputType: 'text',isPasswordVisible: true,passwordValue:''},()=>{this.setData({passwordValue:passwordValue});});console.log('in onEyeTouchStart,inputType:',this.data.inputType,'isPasswordVisible',this.data.isPasswordVisible);},onEyeTouchEnd() {const passwordValue = this.data.passwordValue;this.setData({inputType: 'password',isPasswordVisible: false,passwordValue:''},()=>{this.setData({passwordValue:passwordValue});});console.log('in onEyeTouchEnd,inputType:',this.data.inputType,'isPasswordVisible',this.data.isPasswordVisible);},

相关文章:

  • uni-app学习笔记五-vue3响应式基础
  • 云原生|kubernetes|kubernetes的etcd集群备份策略
  • 9.1 C#控制SW中零件的变色与闪烁
  • 2025 3D工业相机选型及推荐
  • MySQL 5.7在CentOS 7.9系统下的安装(上)——以rpm包的形式下载mysql
  • MySQL 5.7在CentOS 7.9系统下的安装(下)——给MySQL设置密码
  • 解决 CentOS 7 镜像源无法访问的问题
  • kafka----初步安装与配置
  • iOS设备投屏Archlinux
  • stm32之PWR、WDG
  • Rust 环境变量管理秘籍:从菜鸟到老鸟都爱的 dotenv 教程
  • 【2025最新】Windows系统装VSCode搭建C/C++开发环境(附带所有安装包)
  • 【嵌入式】记一次解决VScode+PlatformIO安装卡死的经历
  • 基于大模型的腰椎管狭窄术前、术中、术后全流程预测与治疗方案研究报告
  • 硬密封保温 V 型球阀:恒温工况下复杂介质控制的性价比之选-耀圣
  • RDMA网络通信技术、NCCL集合通讯(GPU)
  • STM32 修炼手册
  • 2025.05.11拼多多机考真题算法岗-第二题
  • 直接在Excel中用Python Matplotlib/Seaborn/Plotly......
  • 论文学习_Understanding the AI-powered Binary Code Similarity Detection
  • 沈阳一超市疑借领养名义烹食流浪狗,当地市监局:已收到多起投诉
  • 特朗普开启第二任期首次外访:中东行主打做生意,不去以色列
  • 27岁杨阳拟任苏木镇党委副职,系2020年内蒙古自治区选调生
  • 全国层面首次!《防震减灾基本知识与技能大纲》发布
  • 上海护师邢红获第50届南丁格尔奖,她为何能摘得护理界最高荣誉
  • 浙江首个核酸药谷落子杭州,欢迎订阅《浪尖周报》第23期