方法封装
limit.js
/** * 只能输入0和正整数 * @param {string} value * @returns {string | number} 返回空字符或数字 */ integerZeroFn(value) { let reg = /^(0|\+?[1-9][0-9]*)$/; let strArray = value.split(""); let newStrs = ""; for (let i = 0; i < strArray.length; i++) { if (reg.test(strArray[i])) { console.log(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.time" placeholder="请输入进场时间" @input="(e) => (form.time= $limit.integerZeroFn(e))"></el-input>