@focus="textFocus" @blur="textBlur" @input="textInput" @linechange="linechange" @touchend="touchTextarea"></textarea>```

- 发布:2025-08-15 14:23
- 更新:2025-08-15 14:46
- 阅读:25
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: win10
HBuilderX类型: 正式
HBuilderX版本号: 4.75
手机系统: HarmonyOS NEXT
手机系统版本号: HarmonyOS 5.0.1
手机厂商: 华为
手机机型: Mate60、Mate70
页面类型: nvue
vue版本: vue3
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
@focus="textFocus" @blur="textBlur" @input="textInput" @linechange="linechange" @touchend="touchTextarea"></textarea>```
@focus="textFocus" @blur="textBlur" @input="textInput" @linechange="linechange" @touchend="touchTextarea"></textarea>```
实际结果:
@focus="textFocus" @blur="textBlur" @input="textInput" @linechange="linechange" @touchend="touchTextarea"></textarea>```
@focus="textFocus" @blur="textBlur" @input="textInput" @linechange="linechange" @touchend="touchTextarea"></textarea>```
t***@126.com (作者)
API 版本号:测过的都是, 13、14、16。 我单独拉个项目试一下
2025-08-15 15:14
t***@126.com (作者)
新建项目是正常的,我再排查下原因吧
2025-08-15 17:22
DCloud_UNI_yuhe
回复 t***@126.com: 好的,有问题可以再反馈的
2025-08-15 17:30
t***@126.com (作者)
排查到原因是:nvue处理焦点的原因,官方文档表明 不支持 :focus="focus" ,需使用组件的 focus()、blur() 方法控制焦点。
但是:focus="focus" 在安卓、小程序的nvue页面都是正常的,鸿蒙的软键盘弹出和光标,也正常,唯一是聚焦后输入无效,再次点击输入框才能输入,说明鸿蒙的聚焦状态并不是真实的聚焦。
鸿蒙删除:focus="focus"后,可以正常输入,但是通过focus()、blur() 方法聚焦后,和键盘弹出相关的视图层通讯会出现其他很多问题。只能不断调试。
可见,鸿蒙next系统, textarea 组件的兼容目前不是很好。或者说不稳定。
2025-08-16 03:18