【问题标题】:Vue.js reference error (event.target) not definedVue.js 引用错误(event.target)未定义
【发布时间】:2020-01-29 18:20:23
【问题描述】:

我有一个具有不同方法的 vue 组件,f.ex。 mouseMove:

mouseMove: function(event) {
    console.log("Event is: " + event);
    element5 = event.target
    this.elementMove = element5
    if (element5.getAttribute('data') == 'day') {
        hourPreStart = parseInt(element5.getAttribute('value'))
        dayPreStart = parseInt(element5.parentElement.firstChild.getAttribute('day-value'));
        this.hourPreEnd = hourPreStart
        this.dayPreEnd = dayPreStart
    }
    console.log(this.hourPreStart, this.dayPreStart, this.hourPreEnd, this.dayPreEnd)
},

当我将鼠标悬停在某个字段上时,我收到此错误:

我不知道问题出在哪里,因为event 已定义。

Here's 完整组件。 有人可以帮我吗?

【问题讨论】:

    标签: vue.js events error-handling mouse referenceerror


    【解决方案1】:

    您正在使用此代码:

    <tbody @mousedown='mouseDown' @mouseup='mouseUp' @mousemove='mouseMove'>
    

    但是您应该将$event 添加到这样的处理程序中:

    <tbody @mousemove='mouseMove($event)'>
    

    【讨论】:

      【解决方案2】:

      event5 未定义(当错误出现时)。您必须先定义event5 才能使用它。 使用这个

      mouseMove: function(event) {
          console.log("Event is: " + event);
          let element5 = event.target
          this.elementMove = element5
          if (element5.getAttribute('data') == 'day') {
              let hourPreStart = parseInt(element5.getAttribute('value'))
              let dayPreStart = parseInt(element5.parentElement.firstChild.getAttribute('day-value'));
              this.hourPreEnd = hourPreStart
              this.dayPreEnd = dayPreStart
          }
          console.log(this.hourPreStart, this.dayPreStart, this.hourPreEnd, this.dayPreEnd)
      }
      

      【讨论】:

        猜你喜欢
        • 2018-04-03
        • 2021-05-10
        • 2020-07-02
        • 1970-01-01
        • 2018-02-07
        • 2015-08-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多