Vue Element-UI dialog弹框 表单 编辑后再点击新增 表单无法重置问题
问题描述在用ElementUI做动态表单时,数据的修改都是打开dialog(子组件)中进行操作的,但是在修改数据时,正常来说可以直接调用 this.$refs[str].resetFields() 直接清空,但是这里会出现一个问题: form表单的重置是以第一次打开的数据作为重置标准,如果先打开的是编辑,那么重置之后以第一次更新的数据作为标准,即表单的数据为编辑时的数据;解决方式点击编辑的时候使用
·
问题描述
在用ElementUI做动态表单时,数据的修改都是打开dialog(子组件)中进行操作的,但是在修改数据时,正常来说可以直接调用 this.$refs[str].resetFields() 直接清空,但是这里会出现一个问题: form表单的重置是以第一次打开的数据作为重置标准,如果先打开的是编辑,那么重置之后以第一次更新的数据作为标准,即表单的数据为编辑时的数据;
解决方式
点击编辑的时候使用nextTick 处理一下form的数据
_.cloneDeep(value):数据深拷贝
this.$nextTick(() => {
this.form = _.cloneDeep(value);
})
然后在关闭dialog 时调用重置表单方法
this.$refs['form'].resetFields();
更多推荐
已为社区贡献42条内容
所有评论(0)