electron---表單驗證問題

使用elementui進行表單提交數據的時候,常常會須要用到表單驗證的功能,下面就來講說這個功能。ui

<template>
  <div>
    <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
      <el-form-item label="活動名稱" prop="name">
        <el-input v-model="ruleForm.name"></el-input>
      </el-form-item>
      <el-form-item label="電話" prop="phone">
        <el-input v-model.number="ruleForm.phone" ></el-input>
      </el-form-item>
      <el-form-item>
        <el-button type="primary" @click="submitForm('ruleForm')">當即建立</el-button>
        <el-button @click="resetForm('ruleForm')">重置</el-button>
      </el-form-item>
    </el-form>
  </div>
</template>

簡單的驗證:this

<script>
  //這裏要俺須要引入,我不是一個對象
  import {isvalidPhone} from '../../../config/validate'
  //定義一個全局的變量,誰用誰知道
  var validPhone=(rule, value,callback)=>{
      if (!value){
          callback(new Error('請輸入電話號碼'))
      }else  if (!isvalidPhone(value)){
        callback(new Error('請輸入正確的11位手機號碼'))
      }else {
          callback()
      }
  }
  export default {
    data() {
      return {
        ruleForm: {
          name: '',
          phone:''
        },
        rules: {
          name: [
            { required: true, message: '請輸入活動名稱', trigger: 'blur' },
            { min: 3, max: 5, message: '長度在 3 到 5 個字符', trigger: 'blur' }
          ],
          phone: [
            { required: true, trigger: 'blur', validator: validPhone }//這裏須要用到全局變量
          ]
        }
      };
    },
    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();
      }
    }
  }
</script>
相關文章
相關標籤/搜索