1***@qq.com
1***@qq.com
  • 发布:2026-11-03 14:19
  • 更新:2026-11-03 14:58
  • 阅读:61

【报Bug】input 设置 type="digit" 无法在 ios16系统上输入小数,hbuilderx4.xx 版本可以

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

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

HBuilderX类型: 正式

HBuilderX版本号: 5.34

手机系统: iOS

手机系统版本号: iOS 16

手机厂商: 苹果

手机机型: iphone14

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

···
<input v-model="number"
type="digit"
placeholder="数量" />
···

预期结果:

可以输入小数(浮点数)

实际结果:

在ios16 上无法输入小数,ios 26可以,hbuilderx4.xx 版本可以

bug描述:

input 设置 type="digit" 无法在 ios16系统上输入小数,hbuilderx4.xx 版本可以

2026-11-03 14:19 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

感谢你提交的 bug 反馈,以下以官方视角对该反馈进行评审,并给出相关分析与建议。

一、反馈内容完整性评审

整体来看,这份反馈的结构比较规范,标题、问题描述、代码示例、预期结果、实际结果和分类信息都有提供,其中分类信息包含了 HBuilderX 版本号(5.34 正式版)、iOS 16、iPhone 14、Vue2 等,这部分是完整的。但仍有以下几处需要补充或修正:

  1. 问题描述中“可以输入小说”应为“可以输入小数”的笔误,建议修正,避免影响问题检索和理解。
  2. 复现步骤不完整:目前只贴出了代码片段,没有说明具体的运行和触发方式。请补充:
    • 运行方式:是标准基座真机运行、自定义基座、云端打包还是离线打包?
    • 具体操作过程:是键盘上没有小数点按钮,还是有小数点按钮但点击后无任何反应?点击小数点后是否有光标跳动、触发删除等异常表现?
  3. 页面类型未说明:请确认该 input 所在页面是 vue 页面还是 nvue 页面(从代码写法看疑似 vue,但需明确)。
  4. iOS 16 建议补充具体小版本号(如 16.x.x),便于官方在对应真机上复现。
  5. 代码示例建议补充一个最小可运行页面(含 data 定义),或直接新建一个空白项目验证能否复现。若空白项目可以复现,建议将可复现项目上传到 ask 社区,便于官方排查。

二、bug 是否成立的分析

从官方文档来看,input 组件 type="digit" 的定义是“带小数点的数字键盘,均支持,App平台、H5平台 vue 页面在 iOS 平台显示的键盘包含负数(原生键盘不支持负号)”,即 digit 类型在 iOS App 平台的 vue 页面上设计上是支持小数点输入的,参见 input 组件文档。因此“iOS 16 上 digit 无法输入小数”与文档描述的支持范围不符,你的预期结果是合理的。

同时,ask 社区中存在多个与你描述高度相似的反馈,且现象都集中在 iOS 16 系统:

  1. 2022 年 iOS 16 刚发布时就有相同问题(HBuilderX 3.6.4,iOS 16 下 digit 无法输入小数点),当时官方在 alpha 3.6.7 中修复过,参见 ask 社区帖子。
  2. 2026 年 4 月,HBuilderX 4.85 + iOS 16 + iPhone 13 又出现相同反馈,参见 ask 社区帖子。
  3. 2026 年 5 月,HBuilderX 5.07 + iOS 16 也有相同反馈(键盘有小数点按钮但点击无反应),参见 ask 社区帖子。

结合你反馈的“HBuilderX 4.xx 正常、5.34 异常、iOS 26 正常、iOS 16 异常”,该现象与社区历史反馈吻合,属于在 iOS 16 系统上集中出现、且历史上出现过并修复过一次的问题,本次有新版本回归的可能性,bug 具备成立的基础,但最终需官方在 iOS 16 真机上按你补充的复现条件确认。

三、可先行的替代方案(供验证)

在等待官方处理期间,根据官方文档与社区反馈,可以尝试以下写法:

  1. 官方文档中 App (5.0+) 支持 type="decimal"(小数输入键盘,包含数字和分隔符),参见 input 组件文档。
  2. inputmode="decimal" 在 app-vue 平台符合条件的高版本 webview 中可用(要求 Safari on iOS >= 12.2),参见 inputmode 文档。
  3. 社区中有多位用户反馈将 input 设置为 type="decimal" inputmode="decimal" 后小数点可以正常输入(参见 ask 社区帖子 的回复);也有用户提出尝试 type="digit" inputmode="decimal" 组合的思路(参见 ask 社区帖子 的回复)。需要注意,有用户反馈 decimal 组合在个别场景下可以输入汉字,请结合你的业务在真机上自行验证效果。

以上替代方案来自文档说明与社区用户实践反馈,并非官方对该 bug 的正式修复结论,请在你的 iOS 16 设备上验证。

四、后续建议

请按第一部分补充运行方式、页面类型、iOS 16 具体版本和详细复现步骤后,在 ask 社区 完善该反馈;如能提供新建空白项目即可复现的最小工程,将更有助于官方定位和修复该问题。

内容为 AI 生成,仅供参考
w***@163.com

w***@163.com

既然HbuilderX 4.xx可以,那就换HbuilderX 4.xx发行,so easy ~

要回复问题请先登录或注册