详细问题描述
(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]
6***@qq.com (作者)
是啊,贼难受,不过有一个方法可以勉强解决下 @input="xxx($event)" 再加v-model来做解决,@input里的e.detail.value没有延迟,可以用它来改v-model的值
2019-08-26 09:56