Vue.js 如何验证表单元素ui中的单个字段?

Vue.js 如何验证表单元素ui中的单个字段?,vue.js,Vue.js,我有一个使用()的表单 现在我可以验证整个表单。。但是如何仅验证age字段 在元素界面中没有任何示例或文档 对于单个字段验证 <script src="//unpkg.com/vue/dist/vue.js"></script> <script src="//unpkg.com/element-ui@2.13.2/lib/index.js"></script> <div id="app&quo

我有一个使用()的表单

现在我可以验证整个表单。。但是如何仅验证
age
字段

元素界面中
没有任何示例或文档


对于单个字段验证

<script src="//unpkg.com/vue/dist/vue.js"></script>
<script src="//unpkg.com/element-ui@2.13.2/lib/index.js"></script>
<div id="app">
<el-form :model="ruleForm" status-icon :rules="rules" ref="ruleForm" label-width="120px" class="demo-ruleForm">
  <el-form-item label="Age" prop="age">
    <el-input v-model.number="ruleForm.age"></el-input>
  </el-form-item>
  <el-form-item>
    <el-button type="primary" @click="submitForm('ruleForm')">Submit</el-button>
    <el-button @click="resetForm('ruleForm')">Reset</el-button>
  </el-form-item>
</el-form>
</div>

提交
重置

var Main={
数据(){
var检查=(规则、值、回调)=>{
如果(!值){
返回回调(新错误('请输入年龄');
}
设置超时(()=>{
如果(!Number.isInteger(值)){
回调(新错误('请输入数字');
}否则{
如果(值<18){
回调(新错误('Age必须大于18');
}否则{
回调();
}
}
}, 1000);
};
返回{
规则格式:{
年龄:''
},
规则:{
年龄:[
{验证器:检查,触发器:'blur'}
]
}
};
},
方法:{
提交格式(formName){
此.$refs[formName].validate((有效)=>{
如果(有效){
警报(‘提交’);
}否则{
log('error submit!!');
返回false;
}
});
},
重置表单(formName){
这是。$refs[formName].resetFields();
}
}
}
变量向量=Vue.extend(主)
新Ctor().$mount(“#app”)

否。这是针对表单模型的验证<代码>此.$refs.numberValidateForm.validate。不是字段。@JonSud更新了字段级验证的答案,请检查。
<script>
var Main = {
    data() {
      var checkAge = (rule, value, callback) => {
        if (!value) {
          return callback(new Error('Please input the age'));
        }
        setTimeout(() => {
          if (!Number.isInteger(value)) {
            callback(new Error('Please input digits'));
          } else {
            if (value < 18) {
              callback(new Error('Age must be greater than 18'));
            } else {
              callback();
            }
          }
        }, 1000);
      };
      return {
        ruleForm: {
          age: ''
        },
        rules: {
          age: [
            { validator: checkAge, trigger: 'blur' }
          ]
        }
      };
    },
    methods: {
      submitForm(formName) {
        this.$refs[formName].validate((valid) => {
          if (valid) {
            alert('submit!');
          } else {
            console.log('error submit!!');
            return false;
          }
        });
      },
      resetForm(formName) {
        this.$refs[formName].resetFields();
      }
    }
  }
var Ctor = Vue.extend(Main)
new Ctor().$mount('#app')
</script>