kerwinzzz
kerwinzzz
  • 发布:2023-08-09 15:48
  • 更新:2023-12-18 21:43
  • 阅读:1006

【报Bug】使用uni-popup-dialog组件时 mode="input" 会在页面打开时自动调起软键盘

分类:uni-app

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

PC开发环境操作系统: Windows

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

HBuilderX类型: 正式

HBuilderX版本号: 3.8.7

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

基础库版本号: 1

项目创建方式: HBuilderX

操作步骤:

iponex ios16.1.2 微信版本8.0.40 官方微信小程序 helloUniApp的扩展组件Popup弹出层页面复现

预期结果:

在打开页面时软键盘不应该自动调用

实际结果:

打开页面时软键盘自动调用了

bug描述:

使用uni-popup-dialog组件时 mode="input" 会在页面打开时自动调起软键盘

2023-08-09 15:48 负责人:无 分享
已邀请:
爱豆豆

爱豆豆 - 办法总比困难多

在不改动源码的情况下 你可以通过变量控制 默认不显示uni-popup-dialog组件 只有uni-popup打开时才显示uni-popup-dialog

<template>  
    <view >  
        <button @tap="open">打开</button>  
        <uni-popup ref="inputDialog" :isMaskClick="false" type="dialog">  
            <uni-popup-dialog v-if="isDialog" @close="isDialog=false" @confirm="isDialog=false" ref="inputClose"  mode="input" title="输入内容" value="对话框预置提示内容!"  
                placeholder="请输入内容" ></uni-popup-dialog>  
        </uni-popup>  
    </view>  
</template>  
<script>  
    export default {  
        data() {  
            return {  
                isDialog:false  
            }  
        },  
        methods: {  
            open() {  
                this.$refs.inputDialog.open()  
                this.isDialog = true  
            }  
        }  
    }  
</script>  
  • kerwinzzz (作者)

    尬住了,app上没有这个问题,小程序上这个问题,还以为是个bug呢。不过这个默认聚焦有点奇怪了,app没有调起键盘。太多页面用了这个组件,直接该源码了。非常感谢!

    2023-08-09 16:25

  • 爱豆豆

    回复 3***@qq.com: 我项目中就是这样解决的 哈哈

    2023-08-09 16:56

爱豆豆

爱豆豆 - 办法总比困难多

因为官方组件源码里默认是聚焦的状态

// uni-popup-dialog 源码里这行代码影响到的  
mounted() {  
            this.focus = true  
        },
kidd

kidd

遇到同样的问题,希望官方可以完善一下这个逻辑问题

5***@qq.com

5***@qq.com

我也遇到了,我的建议是直接不要那个input 模式,放个插槽,里面放input 组件就可以了。 这样还可以设置键盘调起的高度,比原来的好用

要回复问题请先登录注册