6***@qq.com
6***@qq.com
  • 发布:2019-06-13 16:05
  • 更新:2024-12-16 17:10
  • 阅读:2927

【报Bug】input 的@input 监听改变 v-model 的延迟反应

分类:uni-app

详细问题描述

(DCloud产品不会有明显的bug,所以你遇到的问题大都是在特定环境下才能重现的问题,请仔细描述你的环境和重现方式,否则DCloud很难排查解决你的问题)

[内容]
<template>
<view class="content">
<input type="number" v-model.number="number" @input="input">
</view>
</template>
<script>
export default {
data() {
return {
number: 0
}
},
methods: {
input(e) {
//监听反应会延迟修改,需要下一次输入才会吧上一次的小数点给替换 比如 1.2 当输入.的时候不会发生替换 输入完最后的2才吧.给删掉
this.number = parseInt(e.detail.value.replace(/[^\d]/g,''))
console.log(this.number)
}
}
}
</script>

重现步骤

//监听反应会延迟修改,需要下一次输入才会吧上一次的小数点给替换 比如 1.2 当输入.的时候不会发生替换 输入完最后的2才吧.给删掉

[步骤]
输入
11
1.2

[结果]
得到结果
11
12
1

[期望]
原生VUE不会出现这样的情况可能是 v-model有监听延迟问题

[如果语言难以表述清晰,拍一个视频或截图,有图有真相]

IDE运行环境说明

[HBuilder 或 HBuilderX。如果你用其他工具开发uni-app,也需要在此说明]

[IDE版本号]

[windows版本号]
1.9.8 20190518
[mac版本号]

uni-app运行环境说明

[运行端是h5或app或某个小程序?]
h5 app
小程序未测

[运行端版本号]
安卓9版本
Chrome 74.0.3729.157

[项目是cli创建的还是HBuilderX创建的?如果是cli创建的,请更新到最新版cli再试]
HBuilderX创建

[编译模式是老模板模式还是新的自定义组件模式?]

App运行环境说明

[Android版本号]

[iOS版本号]
安卓9版本

[手机型号]
小米8

[模拟器型号]

附件

[IDE问题请提供HBuilderX运行日志。菜单帮助-查看运行日志,点右键打开文件所在目录,将log文件压缩成zip包上传]

[App问题请提供可重现问题的代码片段,你补充的细一点,问题就解决的快一点]

[App安装包或H5地址]

[可重现代码片段]

联系方式

[QQ]

2019-06-13 16:05 负责人:无 分享
已邀请:
1***@qq.com

1***@qq.com - 90后IT男

同样遇到该问题,6月份提出的bug,官方居然现在还没回应???

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

    是啊,贼难受,不过有一个方法可以勉强解决下 @input="xxx($event)" 再加v-model来做解决,@input里的e.detail.value没有延迟,可以用它来改v-model的值

    2019-08-26 09:56

DCloud_UNI_GSQ

DCloud_UNI_GSQ

input、textarea 组件的 input 事件处理函数内实时修改当前值不生效,可以延迟设置,例如:setTimeout(() => { this.value = 100 }, 0)

  • 1***@qq.com

    但是赋值为 空字符串的时候视图层就算加延时也是没用的呀

    2019-08-31 16:13

2***@qq.com

2***@qq.com

还有number类型input框输入小数点后,小数点不会立马就出来,必须要再输入一个数字才会出来,用@input事件和watch来监听input的输入值,都不能立马或取到小数点,这就很难受了。

p***@capsulemining.com

p***@capsulemining.com

作者解决了吗

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

    在提交的时候做拦截把,估计没法处理了

    2020-07-31 11:37

  • p***@capsulemining.com

    回复 6***@qq.com: 我改成在watch里监听值改变,然后延迟300ms在更新值就可以了

    2020-07-31 15:52

6***@qq.com

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

我现在做app已经放弃uniapp这玩意了太多坑没解决,uni最多只能搞搞小程序 (^_^),很多奇奇怪怪bug解决大半天没法解决就得找产品绕个弯解决这个无法解决的问题,到现在这个问题都22年了都快4年官方根本不管这些关键问题

q***@126.com

q***@126.com

2024年了 我怎么还会有这个bug

1***@163.com

1***@163.com

马上2025年了

要回复问题请先登录注册