vue.js element-ui validate中代码不执行问题解决方法
2017-12-18 16:25
1266 查看
先说结论
在自定义验证里面每一个判断都要有callback(),就是要保证callback()一定会执行到
因为要验证数字,参考了官网参考代码如下,发现有如下图bug,当输入为以数字开头包含字符串的内容时,验证不会报错,因为业务逻辑也不相符,随改写代码
<el-form-item label="年龄" prop="age"> <el-input v-model.number="ruleForm2.age"></el-input> </el-form-item> var checkAge = (rule, value, callback) => { if (!value) { return callback(new Error('年龄不能为空')); } setTimeout(() => { if (!Number.isInteger(value)) { callback(new Error('请输入数字值')); } else { if (value < 18) { callback(new Error('必须年满18岁')); } else { callback(); } } }, 1000); };
image.png
let checkNumber = (rule, value, callback) => { if (!value) { return callback(new Error('预存款不能为空')); } setTimeout(() => { if (!Number.isInteger(Number(value))) { callback(new Error('请输入数字值')); } /* else { callback() } */ }, 100); };
因为最开始直接删掉了else中所有内容,在执行
this.$refs[formName].validate((valid) => {})时候,内部代码一直不会执行,最后发现在自定义验证里面每一个判断都要有callback(),就是要保证callback()一定会执行到。
总结
以上所述是小编给大家介绍的vue.js element-ui validate中代码不执行问题解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
您可能感兴趣的文章:
相关文章推荐
- vue.js element-ui validate中代码不执行
- js 通过调用方法终止js代码继续执行的问题(采用throw解决)
- 正试图在 os 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码,这样做会导致应用程序挂起。问题的解决方法!
- vue.js默认路由不加载linkActiveClass问题的解决方法
- 正试图在 os 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码,这样做会导致应用程序挂起。问题的解决方法!
- Vue.js 中取得后台原生HTML字符串 原样显示问题的解决方法
- 关于js动态插入script 标签后页面JS代码执行失败的解决方法
- 解决js赋值时需要添加alert方法赋值才成功否则赋值语句不执行问题
- vue 开发中element-ui库的switch开关绑定number类型数据不成功问题 解决方法
- 解决element-ui中el-menu组件作为vue-router模式在刷新页面后default-active属性与当前路由页面不一致问题的方法
- bootstrap 事件shown.bs.modal用于监听并执行你自己的代码【写hostmanger关联部门遇到的问题及解决方法】
- 正试图在 os 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码,这样做会导致应用程序挂起。问题的解决方法!
- WEB页面在输出JS的代码后变形的问题解决方法
- vue.js与element-ui实现菜单树形结构的解决方法
- 解决IE6-IE8 Js代码不执行问题
- 遇到"不能执行已释放的 Script 的代码" 的问题和解决方法
- 解决使用Vue.js显示数据的时,页面闪现原始代码的问题
- 正试图在 os 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码,这样做会导致应用程序挂起。问题的解决方法!
- 解决innerHTML包含的js代码不能被执行的问题
- 正试图在os加载程序锁内执行托管代码。不要尝试在DllMain或映像初始化函数内运行托管代码 问题解决方法