其他分享
首页 > 其他分享> > uni-number-box插件的bug

uni-number-box插件的bug

作者:互联网

uni-number-box插件的bug

  1. 如图计算 数量的插件
    在这里插入图片描述
    2.问题

当用户在 NumberBox 中输入字母等非法字符之后,会导致 NumberBox 数据紊乱的问题


解决:
代码如下:
_onBlur(event) {
  // 官方的代码没有进行数值转换,用户输入的 value 值可能是非法字符:
  // let value = event.detail.value;

  // 将用户输入的内容转化为整数
  let value = parseInt(event.detail.value);

  if (!value) {
    // 如果转化之后的结果为 NaN,则给定默认值为 1
    this.inputValue = 1;
    return;
  }

  // 省略其它代码...
}
 -----------------------------------------
inputValue(newVal, oldVal) {
// if (+newVal !== +oldVal) {
// 	this.$emit("change", newVal);
// }
 //  加2个条件 必须同时满足 && 新的值必须是 数字型 而且 不是小数
 //  + newVal 隐式转换 number  includes(".")包括这个直接不要  输入的不能超过最大值 不能小于设置的最小值
  if (+newVal !== +oldVal && +newVal && !String(newVal).includes(".") && +newVal >= this.min && +newVal <= this.max) {
	this.$emit("change", newVal);
 }
}

标签:box,插件,number,value,newVal,oldVal,&&,uni
来源: https://blog.csdn.net/gxdzi/article/details/112429656