Vue 进阶(幺幺叁):element ui 表单验证 this.$refs[formName].validate() 问题解决
![Vue进阶(幺幺叁):element ui 表单验证 this.$refs[formName].validate()问题解决](https://static001.geekbang.org/infoq/61/619095ac1e68d9137f99b8671dda4cf3.gif)
一、前言
在开发Vue项目过程中,应用element-ui做表单验证遇到this.$refs[formName].validate()提示validate()未定义的问题。
二、问题原因
要验证的DOM,还没有加载出来。
三、解决方法
首先打印一下this.$refs[formName],检查是否拿到了正确的需要验证的form(有时候获取到数组,需要按下标取值)。
其次在拿到了正确的form后,检查该form上添加的表单验证是否正确,需要注意的点有:
使用此方法前检查
prop一定必须要写在<el-form-item>标签上面,写在里面的input上或者其他任何地方都不行(el-form-itemprop属性绑定);el-formrules,model属性绑定,ref标识;
针对问题一的解决方法如下:
复制代码
有关$nextTick的具体用法,请参考博文《Vue进阶(六十二):理解$nextTick()》。
四、拓展阅读
版权声明: 本文为 InfoQ 作者【No Silver Bullet】的原创文章。
原文链接:【http://xie.infoq.cn/article/c27dfdce94a0c74d2c7675c8b】。文章转载请联系作者。











评论