在对话框中内置一个表单,并且为表单项添加校验。每次打开对话框时,要清除上次填写的表单内容和校验信息。
使用框架Form组件提供的resetFields()
重置表单,将所有字段值重置为初始值并移除校验结果。
在按钮的click
或对话框的open
事件回调函数中,调用resetFields()
对表单进行重置,控制台报错TypeError: Cannot read properties of undefined (reading 'resetFields')
,表单内容有时没有清除。
原因:要获取Form组件来调用resetFields()
,一般通过Vue实例的$refs
属性来获取组件实例,但是此时Vue实例的$refs
属性中没有表单组件实例,因此无法调用resetFields()
解决办法:在表单的closed
事件回调函数中调用该函数,此时组件实例存在。