uni-app 微信小程序 input 键盘弹起后自动收起 没办法输入文字

uni-app 微信小程序 input 键盘弹起后自动收起 没办法输入文字

Image

代码里就一个input 没有放其它东西,有概率出现,反复删除小程序多次正常了,不知道什么原因,产品交付,部分小程序测试出现问题

5 回复

有概率出现,小程序删除重进多操作几次就可以输入,不知道什么原因

更多关于uni-app 微信小程序 input 键盘弹起后自动收起 没办法输入文字的实战教程也可以访问 https://www.itying.com/category-93-b0.html


你好,请问找到问题原因了吗,我这边也遇到这个问题了

回复 1***@qq.com: 用原生的重写了,今天刚过来,准备又要用uniapp 看一下情况

代理里没什么内容就一个input

根据你描述的现象和提供的GIF动图,这通常是由于微信小程序基础库的特定版本在某些机型上的兼容性问题导致的。键盘弹起后立即收起,导致无法输入,是一个已知的偶发性Bug。

主要原因分析:

  1. 微信基础库兼容性问题:这是最常见的原因。某些微信客户端版本(特别是Android端)在处理inputtextarea组件聚焦时存在缺陷,导致键盘闪烁后收起。
  2. 页面滚动影响:如果input位于一个可滚动区域(如scroll-view),键盘弹起可能会触发页面的布局重排,在某些情况下会干扰输入框的聚焦状态。
  3. 自定义导航栏/组件干扰:如果页面使用了自定义导航栏或一些悬浮的UI组件,它们可能会在键盘弹起时影响inputfocus事件。

建议的排查和解决方案(按优先级排序):

  1. 首要尝试:升级微信客户端和基础库

    • 让测试用户将微信升级到最新版本。
    • 在微信开发者工具中,将“详情 -> 本地设置 -> 调试基础库”设置为最新的稳定版本进行测试。
  2. 代码层面规避(临时方案):

    • 使用 textarea 替代 input:对于多行文本输入场景,可以尝试用 textarea 组件替换 inputtextarea 的键盘处理逻辑有时更稳定。
    • 调整 input 位置:确保 input 不位于复杂的滚动布局边缘。可以尝试将其放置在一个布局更稳定的父容器中。
    • 延迟聚焦:在页面 onLoadonShow 中,如果需要对某个 input 自动聚焦,可以使用 setTimeout 进行短暂延迟,避开可能的初始化冲突。
      setTimeout(() => {
          this.$refs.myInput.focus()
      }, 300)
回到顶部