form-create icon indicating copy to clipboard operation
form-create copied to clipboard

重置表单怎么生效

Open zbhezzp opened this issue 3 years ago • 4 comments

UI 框架: elementui 当编辑和添加共用一个form表单时,如果先点击了编辑,会填充所编辑的相关信息,点击取消或关闭弹窗的时候会调用this.fApi.resetFields()该方法;再点击添加时,弹窗的表单项是没有重置过的

async-validator: ['xmm5vu3ja3r4 is required']

zbhezzp avatar Aug 09 '22 09:08 zbhezzp

我也遇到相同的问题 this.eqAutoAbilityInfoFApi.resetFields(); this.eqAutoAbilityInfoFApi.refresh(); this.eqAutoAbilityInfoFApi.reload(); 这几个都试了,没效果,我在rule里写 update(val, rule){ console.log('>>>>',val); } 发现调用reset 并没有激活update,版本 @form-create/element-ui": "2.5.25 用的是:value.sync双向绑定 但,如果我把form里数据改成this.form = {xxx:null}就有效果,但是我的表单结构太复杂(嵌套),而且会有多个create同时存在,这样写后面修改起来容易出问题,this.form = {}或this.form = null 是没效果的,所以resetFields方法是不是有bug啊

@xaboy

wdngit avatar Aug 19 '22 09:08 wdngit

再弹窗中生成表单时,建议将 rule 深拷贝后再使用

xaboy avatar Aug 19 '22 10:08 xaboy

这个问题下个版本优化 @wdngit

xaboy avatar Aug 21 '22 12:08 xaboy

3.1.13版本已优化

xaboy avatar Sep 12 '22 14:09 xaboy

重置表单 弹窗取消的时候依旧不生效是因为什么呢 @-----当编辑和添加共用一个form表单时,如果先点击了编辑,会填充所编辑的相关信息,点击取消或关闭弹窗的时候会调用this.fApi.resetFields()该方法;再点击添加时,弹窗的表单项是没有重置过的 当前版本是 3.1.22

fit2cloudwxx avatar Aug 07 '23 08:08 fit2cloudwxx