Vue使用el-dialog关闭后重置表单方式
作者:啧啧静
这篇文章主要介绍了Vue使用el-dialog关闭后重置表单方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
使用el-dialog关闭后重置表单
el-dialog绑定close事件
这个有个注意得地方,可能有很多人会使用closed事件,close:Dialog 关闭的回调;closed:Dialog 关闭动画结束时的回调。
本人就是这么入坑得,使用了closed,然后会出现连续点击保存按钮会出现添加多条数据问题,原因是因为表单还没销毁前我就把按钮禁用状态放开了,导致了连续点击按钮出现多增数据问题,大家一定要注意额
重置表单数据
resetForms(formName) { this.$refs[formName].resetFields(); }
表单验证清除
这个主要是加在el-dialog被打开之前,如果你点击一次保存按钮,是不会出现验证报红得问题得,但是你如果连续点击保存,就会出现验证问题了,这时候就需要添加清除验证拉。
this.$nextTick(() => { this.$refs.formData.clearValidate(); });
Vue中el-dialog的用法
写入HTML
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> <el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form-item :label="title + '原因'" prop="reason"> <el-input v-model="form.reason" :placeholder="'请输入' + title + '原因'" /> </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> <el-button type="primary" @click="submitForm">确 定</el-button> <el-button @click="cancel">取 消</el-button> </div> </el-dialog>
写入变量
// 弹出层标题 title: "", // 是否显示弹出层 open: false, // 表单参数 form: {}, // 表单校验 rules: { reason: [ { required: true, message: "参数名称不能为空", trigger: "blur" } ], },
写入方法
// 表单重置 reset() { this.resetForm("form"); }, /** 提交按钮 */ submitForm: function () { this.$refs["form"].validate((valid) => { if (valid) { //提交保存 } }); }, // 取消按钮 cancel() { this.open = false; this.reset(); },
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。