用户2897955
用户2897955
  • 发布:2026-04-24 16:34
  • 更新:2026-04-24 16:35
  • 阅读:21

【报Bug】输入框设置password第一次点进去会显示眼睛标识,失去焦点在点击进去就不显示了,在h5和app上都是

分类:uni-app

产品分类: uniapp/H5

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win11

HBuilderX类型: 正式

HBuilderX版本号: 5.07

浏览器平台: Edge

浏览器版本: 版本 147.0.3912.72 (正式版本) (64 位)

项目创建方式: HBuilderX

示例代码:

<input v-model="oldPassword" password class="row-input"
placeholder="请输入密码" />

操作步骤:

<input v-model="oldPassword" password class="row-input"
placeholder="请输入旧密码" />

预期结果:

应该是显示会隐藏密码

实际结果:

失去焦点眼睛不显示了

bug描述:

输入框设置password第一次点进去会显示眼睛标识,失去焦点在点击进去就不显示了,在h5edge上面和app上都是

2026-04-24 16:34 负责人:无 分享
已邀请:
Ask小助手

Ask小助手 - Ask社区AI助手

需要补充HBuilderX版本信息和详细的报错信息。
欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

感谢反馈,针对此问题我进行如下评审分析:

反馈内容完整性评价

该反馈基本包含了必要的要素,但存在以下不足:

  1. 复现步骤过于简略:仅提供了代码片段,未说明是 Vue 页面还是 nvue 页面,也未提供完整的页面上下文。根据知识库内容,input 组件在 vue 和 nvue 页面的实现机制不同,在 nvue 页面使用原生输入框时行为可能有差异。

  2. 问题描述需补充:未明确说明使用的浏览器类型(从描述中提到"edge"推测是 Microsoft Edge),且未区分是 H5 的浏览器行为还是 App 的原生行为。

  3. 代码示例不完整:提供的代码片段无法直接运行,缺少 script 部分的数据定义和页面结构上下文。

是否为 Bug 判定

根据知识库检索结果,此问题大概率不是 uni-app 框架 bug,而是浏览器原生行为或期望与组件功能不匹配导致:

  1. 浏览器原生行为:在对话知识库中发现类似反馈:"是edge一输入会默认有眼睛,但是移开光标再进入就不会有"。Microsoft Edge 浏览器对原生 password 输入框有自带的眼睛图标功能,这是浏览器行为,uni-app 无法干预。失去焦点后再次进入不显示,可能是 Edge 浏览器的交互逻辑。

  2. 原生 input 与 uni-easyinput 的区别:根据结构化文档知识库,uni-easyinput 组件明确提供了 type="password" 时的眼睛图标功能("输入框尾部会显示眼睛图标,点击可切换内容显示状态"),而原生 <input> 组件的 password 属性仅控制文本隐藏("是否是密码类型"),不保证提供眼睛图标切换功能。

建议解决方案

  1. 如需统一的眼睛图标功能:建议使用 uni-easyinput 组件替代原生 input,该组件在密码模式下提供标准的眼睛显示/隐藏切换功能,且在各端表现一致。

  2. 如确需使用原生 input:对于 H5 端,眼睛图标显示与否取决于浏览器自身实现(Edge 有自带,Chrome 也有类似功能),建议接受浏览器原生行为或自行封装实现图标切换逻辑。

  3. App 端排查:如果在 App 端(非 H5)也出现此问题,建议提供完整复现工程,并确认是 vue 页面还是 nvue 页面,因为 nvue 页面使用原生输入框,其密码显示逻辑由系统控制。

反馈质量评级

中等。问题现象描述清晰,但缺少关键的环境上下文(具体浏览器版本、页面类型),且混淆了原生 input 的 password 属性与组件库提供的密码框功能。建议在后续反馈中提供可运行的完整示例工程,并区分是框架问题还是浏览器原生行为。

内容为 AI 生成,仅供参考

要回复问题请先登录注册