美文网首页
Uncaught TypeError: Cannot read

Uncaught TypeError: Cannot read

作者: 菲儿_cdd4 | 来源:发表于2021-09-07 17:28 被阅读0次

    参考链接:
    https://blog.csdn.net/bobobocai/article/details/91437656

    • 在用vue+elementUI开发后台系统的时候,登录和注册用了同一个弹出框。为了在新增弹出框清空表单, 使用了 this.$refs[ruleForm].resetFields()
      报错信息:
      image.png
      报错代码:
      image.png
      问题原因:
      mounted加载table数据后,隐藏的弹出框冰没有编译到DOM里面。所以每次点击出现Dialog的时候,$refs冰没有获取到DOM元素导致'resetFields' of undefined

    解决方案:
    1.判断是不是第一次点击,如果是第一次就点击就没必要清空 Dialog 表单数据, 根据this.refs['ruleForm'] 的值是否是undefined判断。然后再使用nextTick,保证DOM已经渲染成功

    showModal() {
          this.$nextTick(() => {
            if (this.$refs['ruleForm'] !== undefined) {
              this.$refs['ruleForm'].resetFields()
            }
          })
        },
    

    相关文章

      网友评论

          本文标题:Uncaught TypeError: Cannot read

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