JavaScript

超轻量级php框架startmvc

vue+element实现表单校验功能

更新时间:2020-08-27 12:06:01 作者:startmvc
 要实现这个功能其实并不难,element组件直接用就可以,但是我在使用过程中碰到了几个坑

 要实现这个功能其实并不难,element组件直接用就可以,

但是我在使用过程中碰到了几个坑,就记录下来,分享给大家,避免落坑,话不多说,直接上过程......

表单校验功能:

 

实现这个功能,总共分为以下4布:

1.在el-form标签中定义:rules="rules";ref="reference" 2.在el-form-item定义prop="name"; 3.在选项data中定义rules校验规则; 4.在提交方法中检查用户行为

template代码:


 <el-form
 :model="Opinion"
 ref="MyOpinion"
 :rules="rules"
 size="small"
 class="lj-form lj-form-s1"
 >
 <el-form-item label="审核意见: " prop="txt" style="margin-bottom:25px;">
 <el-input type="textarea" :rows="5" v-model="Opinion.txt"></el-input>
 </el-form-item>
 </el-form>

data定义数据代码:


 data() {
 return {
 Opinion: {
 radio: "1",
 txt: "",
 value: ""
 },
 rules: {
 txt: [{ required: true, message: "请输入审核意见", trigger: "blur" }]
 }
 };
 },

methods方法代码:


 async approval() {
 let _this = this;
 this.$refs.MyOpinion.validate(async valid => {
 if (valid) {
 const res2 = await _this.$axios.post(`/approve/approve_refuse`, {
 ...obj
 });
 if (res2.data.error == 0) {
 _this.$message.success(res2.data.message);
 }
 _this.innerVisible = false;
 _this.visibleApply = false;
 }
 });
 }

  注意点:①定义prop的时候,值要求是属于form绑定的model数据对象里面,同时名字要一样;

      ②data中定义rules要在定义表单的数据之后(我一般放在data的最后面)

总结

以上所述是小编给大家介绍的vue+element实现表单校验功能,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

vue+element vue表单校验