Ant Design Vue resetFields表单重置不生效问题及解决
|
Ant Design Vue resetFields表单重置不生效
使用 Ant Design Vue 的 resetFields 重置表单,当新增表单和编辑表单公用一套样式的时候, 编辑完成后点击新增还会出现老数据,如果只是简单的新增则一切正常,不知道各位有没有遇到这个问题
几经搜索
发现 resetFields 作用不是清空表单,而是将所有字段值重置为初始值。
因此点编辑时因为表单有初始值信息,修改完关闭后 resetFields 会保留初始值, 再次点击新增时就出现了难缠的老数据。
改进方法
点击新增时增加调用置空表单字段的方法- function resetForm() {
- return {
- username: '',
- alias: '',
- email: '',
- dept_id: undefined,
- phone: '',
- }
- }
复制代码 这样就能无后顾之忧了
Vue重置表单的坑 resetFields方法
- <el-form :inline="true" :model="searchForm" ref="searchForm" class="demo-form-inline">
- <el-form-item prop="customerName">
- <el-input class="sendmessag-input" v-model="searchForm.customerName" placeholder="请输入客户姓名" width="40" />
- </el-form-item>
- <el-form-item prop="cardIdno">
- <el-input class="sendmessag-input" v-model="searchForm.cardIdno" placeholder="请输入证件号码" width="40" />
- </el-form-item>
- <el-form-item prop="contactPhone">
- <el-input class="sendmessag-input" v-model="searchForm.contactPhone" placeholder="请输入联系电话" width="40" />
- </el-form-item>
- <el-form-item prop="orderNo">
- <el-input class="sendmessag-input" v-model="searchForm.orderNo" placeholder="请输入工单编号" width="40" />
- </el-form-item>
- <el-form-item>
- <el-button type="primary" @click="onSubmit">查询</el-button>
- <el-button @click="resetForm">重置</el-button>
- </el-form-item>
- </el-form>
复制代码- resetForm() {
- this.$refs.searchForm.resetFields();
- },
复制代码 坑1
在e-form标签加上ref=“searchForm”,识别哪个表单做重置,这个一般都知道。
坑2
在e-form-item 标签下加prop,resetFields哪些字段的做重置
坑3
在重置的数据必须包裹在e-form-item下。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
来源:https://www.jb51.net/javascript/3222716gl.htm
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|
|
|
发表于 2024-6-11 12:16:01
举报
回复
分享
|
|
|
|