uni-app v-model没有显示真实数据
uni-app v-model没有显示真实数据
通过watch 或者 监听input事件判断数据是否大于最大值小于最小值,小于最小值就设置为最小值,大于最大值就设置为最大值,结果数据设置的值是对的,显示的还是键入的值
此时log出来的数据是0.005 结果显示的是大于0.005的
poundageInput() {
let poundage = parseFloat(this.poundage)
if (poundage < 0.001) {
this.poundage = 0.001
}
if (poundage > 0.005) {
this.poundage = 0.005
}
}
更多关于uni-app v-model没有显示真实数据的实战教程也可以访问 https://www.itying.com/category-93-b0.html
17 回复
先这样解决
setTimeout(() => {
this.value = 100
}, 0)
更多关于uni-app v-model没有显示真实数据的实战教程也可以访问 https://www.itying.com/category-93-b0.html
这样确实有效 感谢!
11111
没人解决这个问题吗??
求解决
11111111
提供一个能运行的demo
上传了,麻烦看一下,谢谢
上传了demo
@DCloud_客服_GSQ 麻烦帮忙看一下 很急
111111
11111111
这是一个典型的v-model数据绑定和视图更新不同步的问题。在uni-app中,当通过代码修改v-model绑定的数据时,有时会出现视图未及时更新的情况。
解决方案:
- 使用this.$nextTick确保DOM更新:
poundageInput() {
let poundage = parseFloat(this.poundage)
if (poundage < 0.001) {
this.poundage = 0.001
}
if (poundage > 0.005) {
this.poundage = 0.005
}
this.$nextTick(() => {
this.poundage = parseFloat(this.poundage.toFixed(3))
})
}
- 或者使用强制更新:
poundageInput() {
let poundage = parseFloat(this.poundage)
if (poundage < 0.001) {
this.poundage = 0.001
}
if (poundage > 0.005) {
this.poundage = 0.005
}
this.$forceUpdate()
}