非黑非白
非黑非白
  • 发布:2024-01-17 16:15
  • 更新:2024-01-24 18:08
  • 阅读:470

【报Bug】手机使用真机调试时,uni-search-bar的@confirm无法读取搜索框当前text

分类:uni-app

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

PC开发环境操作系统: Mac

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

HBuilderX类型: 正式

HBuilderX版本号: 3.99

第三方开发者工具版本号: 1.06.2401122darwin-arm64

基础库版本号: 3.3.1

项目创建方式: HBuilderX

操作步骤:
<uni-search-bar ref="searchBar" style="flex:1;" radius="100" v-model="searchText" :focus="focus"  
    :placeholder="hotWord" clearButton="auto" cancelButton="always" @clear="cancel" @confirm="confirm"  
    @cancel="cancel" />  

confirm(res) {  
    // 键盘确认  
    this.search(res.value);  
}

预期结果:

res应该有值

实际结果:

res为空字符串

bug描述:

如题。另外,项目使用的是uni-starter为模板,页面是pages/list/search/search.nvue。在微信小程序开发者工具调试时,使用电脑键盘一切正常。当使用小米手机进行真机调试时,输入完按下键盘上的搜索,confirm时间绑定的方法触发但是无法读取搜索框内的内容,console log 显示为空字符串

2024-01-17 16:15 负责人:无 分享
已邀请:
爱豆豆

爱豆豆 - 办法总比困难多

你直接写个 input 加上 @ confirm 事件 试试能不能拿到值

  • 非黑非白 (作者)

    Input可以在真机调试时拿到值,但是uni-search-bar组件的@confirm还是不行

    2024-01-23 18:24

  • 爱豆豆

    回复 y***@163.com: 你打开源码uni-search-bar 把这个uni.hideKeyboard(); 和 plus.key.hideSoftKeybord()都删了 运行看看效果 我这边没有小米手机 只能你去试试了


    uni-search-bar.vue


    confirm() {    
    // #ifndef APP-PLUS
    uni.hideKeyboard(); // 删掉
    // #endif
    // #ifdef APP-PLUS
    plus.key.hideSoftKeybord() // 删掉
    // #endif
    this.$emit("confirm", {
    value: this.searchVal
    })
    },

    2024-01-23 18:45

非黑非白

非黑非白 (作者)

当使用真机调试1.0版本时可以正确获取到值,而使用2.0版本则失败

非黑非白

非黑非白 (作者)


@爱豆豆

  • 爱豆豆

    上面我发的你试了吗?

    2024-01-24 18:16

  • 非黑非白 (作者)

    回复 爱豆豆: 试过了,不生效。这两句是APP端的条件编译。我测的是小程序端。BTW,我刚又发了个问题,你可以看一下

    2024-01-24 18:22

要回复问题请先登录注册