vue element el-form resetFields失效问题解决

2 篇文章 0 订阅
1 篇文章 0 订阅

在用vue element 的 el-form 组件时, 遇到一个问题就是使用el-form的resetFields也就是对整个表单进行重置时,发现有个输入框没有重置(也就是清空)前端页面如下图,要实现的是姓名、学号必填,备注选填,点击“取消”按钮的时候,重置/清空所以输入框:
在这里插入图片描述
html代码:

<el-form :model="studentInfo" ref="studentInfoForm" :rules="studentRules" :inline="true">
      <el-form-item label="姓名:" prop="studentName">
        <el-input v-model="studentInfo.studentName" placeholder="姓名"></el-input>
      </el-form-item>
      <el-form-item label="学号:" prop="studentId">
        <el-input v-model="studentInfo.studentId" placeholder="学号"></el-input>
      </el-form-item>
      <el-form-item label="备注:">
        <el-input v-model="studentInfo.remark" placeholder="备注"></el-input>
      </el-form-item>
    </el-form>
    <div class="bottom-btns">
      <el-button @click="handleCancel">取 消</el-button>
      <el-button type="primary" @click="handleSub">提 交</el-button>
    </div>

js代码:

// rules 在data的return 里
studentRules: {
  studentName: [{ required: true, message: '请输入姓名', trigger: 'blur' }],
  studentId: [{ required: true, message: '请输入学号', trigger: 'blur' }],
},
studentInfo:{
  studentName:'',
  studentId:'',
  remark:'',
},

// 事件 在methods里
handleCancel(){
 this.$refs["studentInfoForm"].resetFields();
},
handleSub(){},

后来上午查的说是想让resetFields起作用的话,需要给el-form-item添加一个prop属性,官网上对prop的说明:
在这里插入图片描述
按照说明,在使用 validate、resetFields 方法的情况下,该属性是必填,我对此使用不熟练,所以赶紧给“备注”加上了prop属性:
在这里插入图片描述
但发现还是不行…
后来才发现是我prop写的不对!原来这个prop的值也是要和v-model里绑定的值对应的!也就是:
在这里插入图片描述
其实作为菜鸟,这个我是不太理解的,我以为prop属性值可以自定义,没想到和v-model有关系要一致。。。(小猜测:难道prop的值不只是给校验的时候查找el-form-item用的,也是对应的el-form的:model="studentInfo"这个studentInfo对应的值?)
在这里插入图片描述

希望本文对您有所帮助!
也希望懂得原理的大佬不吝赐教!

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值