w***@qq.com
w***@qq.com
  • 发布:2020-12-28 17:09
  • 更新:2020-12-30 21:21
  • 阅读:996

【报Bug】小程序 input组件 push 页面返回后无法获取焦点并弹出软键盘

分类:uni-app

产品分类: uniapp/小程序/微信

PC开发环境操作系统: Mac

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

HBuilderX类型: 正式

HBuilderX版本号: 2.9.8

第三方开发者工具版本号: 1.03.2009140

基础库版本号: 2.14.1

项目创建方式: HBuilderX

示例代码:

<view >
<view class="row">
<input v-model="price" placeholder="0.00" type="digit" class="list-input" />
</view>
<view class="row" @click="change('type')">
</view>
</view >

操作步骤:

界面上有一个 input 自动获取焦点 弹出软键盘
点击其他按钮跳转其他页面
返回上一级界面 此时这个 input 无法唤起软键盘也无法获取焦点

预期结果:

界面上有一个 input 自动获取焦点 弹出软键盘
点击其他按钮跳转其他页面
返回上一级界面 此时这个 input 可以编辑输入内容

实际结果:

界面上有一个 input 自动获取焦点 弹出软键盘
点击其他按钮跳转其他页面
返回上一级界面 此时这个 input 不可以编辑输入内容

bug描述:

界面上有一个 input 自动获取焦点 弹出软键盘
点击其他按钮跳转其他页面 返回之后 这个 input 无法唤起软键盘也无法获取焦点

2020-12-28 17:09 负责人:无 分享
已邀请:
w***@qq.com

w***@qq.com (作者)

我后面试了下 在 iOS 下 需要延时跳转界面 可以解决这个问题 ,但是原理我不清楚 。同时 延时 300ms 可以 200ms 又不行 按照不同的设备 这个时间应该不一致 这个方案不可行
uni.hideKeyboard()
setTimeout(function() {
uni.navigateTo({
url: ''
})
}, 300);

DCloud_UNI_Anne

DCloud_UNI_Anne

  • w***@qq.com (作者)

    <template>

    <view>


        <input focus placeholder="测试" style="width: 300px;height: 40px; line-height: 40px;" />   

    <view style="width: 200px; height: 20px; background-color: #007AFF;" @click="goto"></view>
    </view>

    </template>


    <script>


    export default {  
    data() {
    return {
    payPrie: 0
    }
    },
    methods: {
    goto(){
    uni.navigateTo({
    url:'../operation/about/index'
    })
    }
    }
    }

    </script>


    <style>

    </style>


    什么都没做处理 就这么简单的一个界面 不知道哪里出问题了 在 iOS 上面 只要没先收起键盘 跳转界面在返回来就不能再输入

    2020-12-28 17:30

  • DCloud_UNI_Anne

    回复 w***@qq.com: 试了微信小程序和iphone6s plus 13.6.1 都未出现该问题。

    2020-12-28 18:00

  • w***@qq.com (作者)

    回复 DCloud_UNI_Anne: 不应该, 我试了几种情况,只有在苹果手机+小程序才会出现这种情况 。 Android 或者 app运行是正常的

    2020-12-29 09:49

  • r***@163.com

    回复 DCloud_UNI_Anne: 你们在试一下 用ios 14.2.1 我也出现了

    2020-12-30 21:22

r***@163.com

r***@163.com

我也遇到了,楼主你解决了吗 300 我的也可以 就是等的时间长

该问题目前已经被锁定, 无法添加新回复