Vue使用el-dialog關(guān)閉后重置表單方式
使用el-dialog關(guān)閉后重置表單
el-dialog綁定close事件
這個有個注意得地方,可能有很多人會使用closed事件,close:Dialog 關(guān)閉的回調(diào);closed:Dialog 關(guān)閉動畫結(jié)束時的回調(diào)。
本人就是這么入坑得,使用了closed,然后會出現(xiàn)連續(xù)點擊保存按鈕會出現(xiàn)添加多條數(shù)據(jù)問題,原因是因為表單還沒銷毀前我就把按鈕禁用狀態(tài)放開了,導致了連續(xù)點擊按鈕出現(xiàn)多增數(shù)據(jù)問題,大家一定要注意額

重置表單數(shù)據(jù)
resetForms(formName) {
this.$refs[formName].resetFields();
}
表單驗證清除
這個主要是加在el-dialog被打開之前,如果你點擊一次保存按鈕,是不會出現(xiàn)驗證報紅得問題得,但是你如果連續(xù)點擊保存,就會出現(xiàn)驗證問題了,這時候就需要添加清除驗證拉。
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,
// 表單參數(shù)
form: {},
// 表單校驗
rules: {
reason: [
{ required: true, message: "參數(shù)名稱不能為空", trigger: "blur" }
],
},
寫入方法
// 表單重置
reset() {
this.resetForm("form");
},
/** 提交按鈕 */
submitForm: function () {
this.$refs["form"].validate((valid) => {
if (valid) {
//提交保存
}
});
},
// 取消按鈕
cancel() {
this.open = false;
this.reset();
},
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue-cli3使用mock數(shù)據(jù)的方法分析
這篇文章主要介紹了vue-cli3使用mock數(shù)據(jù)的方法,結(jié)合實例形式分析了vue-cli3使用mock數(shù)據(jù)的相關(guān)實現(xiàn)方法與操作注意事項,需要的朋友可以參考下2020-03-03

