方法封装
limit.js
export default { /** * 只能输入大于0的正整数(不能以0开头) * @param {string} value * @returns {string | number} 返回空字符或数字 */ integerFn(value) { let reg = /[1-9]{1}[0-9]*$/; let strArray = value.split(""); let newStrs = ""; for (let i = 0; i < strArray.length; i++) { if (reg.test(strArray[i])) { newStrs += strArray[i]; } else if (i > 0 && strArray[i] === "0") { newStrs += strArray[i]; } } if (newStrs - 0 > 0) { return newStrs - 0; } else { return ""; } }, }
main.js
// 将限制函数文件绑定到vue原型上,供全局使用
import limit from "./api/limit.js";
Vue.prototype.$limit = limit;
组件使用
<el-input v-model="form.money" placeholder="请输入充值金额" @input="(e) => (form.money = $limit.integerFn(e))"></el-input>