美文网首页
解决element resetFields()不生效的问题

解决element resetFields()不生效的问题

作者: IssunRadiance | 来源:发表于2023-10-08 10:41 被阅读0次
  1. 首先我们新增编辑的时候
formOpen(num, row) {
  this.addXiangDia = true // 表单弹窗打开
  this.addDialogType = num // 1-新增  2-编辑
  if (num == 2) {  // 编辑的时候 数据回显赋值
    this.addForm.desc = row.target_desc
    this.addForm.addname = row.target_name
    this.addForm.addsj = row.target_value
  }
},
  1. 这时候我们点击编辑, 数据回显没问题


    image.png
  2. 这时候弹窗关闭,会调取方法

formClose(formName) { // formName-弹窗中el-form的ref值
  this.$refs[formName].resetFields() // 表单重置
},
  1. 这时候正常 会把表单已经重置清空了,但是新增时,数据还在


    image.png
  2. 解决方法:

formOpen(num, row) {
  this.addXiangDia = true // 表单弹窗打开
  this.addDialogType = num // 1-新增  2-编辑
  if (num == 2) {  // 编辑的时候 数据回显赋值
    this.$nextTick(() => {
      this.addForm.desc = row.target_desc
      this.addForm.addname = row.target_name
      this.addForm.addsj = row.target_value
    })
  }
},

加一个this.$nextTick(() => {}),在 form 表单 mounted之后再进行赋值操作,这样就可以了。

相关文章

网友评论

      本文标题:解决element resetFields()不生效的问题

      本文链接:https://www.haomeiwen.com/subject/sccbbdtx.html