問題: 使用this.$ref[‘form‘] .resetFields()無法重置表單項
原因:
1.沒有給表單添加ref屬性
<el-form ref="form"></el-form>
2.表單項el-form-item沒有添加prop屬性,prop屬性需要與input框綁定的屬性一致
3.還有一個經常出現這種問題的場景是,當使用vuex的時候,新建表單與編輯表單復用,此時上述屬性跟方法都添加了也無法達到清除表單的效果。
此時我們再重新看一下element-ui的官方文檔
重點:resetField()方法不是將表單重置為空,而是重置為初始值
所以當我們打開新建表單的時候,表單項綁定的屬性值為空,在提交表單后,表單項綁定的值不為空,此時再打開新建表單是會有上一次的值出現,此時resetField()方法是無法清空表單的,因為在這次操作的時候,屬性初始值就不為空。
解決方法: 在提交表單成功后對綁定的值進行方法重置
在對屬性進行重置后執行resetFields方法,是因為對屬性重置為空時,可能會觸發表單規則的驗證,此時執行resetFields會移除校驗結果
作者:CSDN博主「只想做個好人啊」
原文鏈接:https://blog.csdn.net/haidong55/article/details/90484138
