element Form resetFields踩过的坑

描述:

自己封装了修改(弹窗)组件,每次的打开修改弹窗后请求修改项数据进行回填,关闭弹窗时使用Form组件的resetFields方法重置表单,第一次使用该组件正常,第二次使用该组件在关闭时,会闪现第一次打开时的修改项的数据;

原因:

form表单的重置是以第一次打开的数据作为重置标准,如果先打开的是更新,那么重置之后以第一次更新的数据作为标准;

解决方法:

每次关闭弹窗时销毁组件,每次打开该组件再对该组件的dom进行重新挂载,挂载完成后进行修改项数据请求回填;

使用:

通过v-if控制Form组件创建与销毁,使用vue的this.$nextTick进行赋值;

this.$nextTick(() => {
    this.form = res.data;
});

猜你喜欢

转载自blog.csdn.net/Beamon__/article/details/84346991