共计 648 个字符,预计需要花费 2 分钟才能阅读完成。
标签局部:
<el-input v-model="form.field" @input="(value) => inputFieldValueFormat(value,'field', type)" />
解决回调局部
inputFieldValueFormat(value, field, type) {
// 小于 100 且小数点后最多输出 6 位
if (type === 'less100rate') {const valueData = value.replace(/^(\-)*\D*(\d*(?:\.\d{0,6})?).*$/g, '$1$2');
if (valueData <= 100) {this.form[field] = valueData;
} else {this.form[field] = valueData.slice(0, 2);
}
// 规范金额 最多输出 2 位小数
} else if (type === 'money') {this.form[field] = value.replace(/^(\-)*\D*(\d*(?:\.\d{0,2})?).*$/g, '$1$2');
// 纯数字
} else if (type === 'number') {this.form[field] = value.replace(/[^\d]/g, '');
// 整数位最多输出 n 位 小数为最多输出 m 位
} else if () {this.form[field] = value.replace(/^(\-)*\D{0,n}(\d{0,n}(?:\.\d{0,m})?).*$/g, '$1$2');
}
},
正文完