给form加一个ref属性,然后在取消事件里面写this.
refs[′refname′].resetFields()。也可以在当弹出层刚打开的时候,this.
r
e
f
s
[
′
r
e
f
n
a
m
e
′
]
.
r
e
s
e
t
F
i
e
l
d
s
(
)
。
也
可
以
在
当
弹
出
层
刚
打
开
的
时
候
,
t
h
i
s
.
refs[‘refname’].resetFields(),也能达到效果
监听弹框开关比较合理,如下:
问题描述:点击打开弹窗时,element表单提供的清空表单方法resetFields()会报错
问题产生原因:由于element组件dialog打开有延时,导致form表单未生成就调用了方法,所以找不到dom元素自然就报错了。
解决方法:监测弹框的打开和关闭,异步执行form上的方法
watch: {
dialogFormVisible(val){
!val&&setTimeout(() => {
this.$refs[‘createForm’].resetFields();
}, 0);
}
},