【问题标题】:Vue: Access component object inside methods [duplicate]Vue:在方法中访问组件对象[重复]
【发布时间】:2021-08-25 11:19:22
【问题描述】:

我想访问一个组件的对象,但是方法中的this 是对methods: {} 对象的引用。

methods: {
  getInput: () => {
    return this.$refs.input.value
  }
}

我尝试调用getInput(),但出现错误:

未捕获的类型错误:无法读取未定义的属性“$refs”。

如何访问组件的对象而不是 methods 对象?

【问题讨论】:

    标签: javascript vue.js


    【解决方案1】:

    根据official docs,您应该使用普通函数而不是箭头一来访问组件实例:

        methods: {
          getInput() {
            return this.$ref.input.value 
          }
        }
    

    请注意,您不应该使用箭头函数来定义方法(例如plus: () => this.a++)。原因是箭头函数绑定了父上下文,因此这不会是您期望的 Vue 实例,this.a 将是未定义的.

    【讨论】:

      猜你喜欢
      • 2019-09-10
      • 1970-01-01
      • 2016-08-14
      • 2017-12-31
      • 1970-01-01
      • 2022-01-05
      • 1970-01-01
      • 2018-11-03
      • 2021-10-17
      相关资源
      最近更新 更多