Vue,访问组件方法

时间:2019-04-21 06:12:11

标签: vue.js

尝试从插件的配置中访问组件功能时遇到问题。例如,我想这样使用vue-flatpickr:

  mounted() {
    this.flatpicker = flatpickr(this.$refs.dateInput, {
      onChange(date) {
        this.$emit("dateChanged", date);
      }
    });
  }

但是,我得到一个错误

  

未捕获的TypeError:this。$ emit不是函数

问题不仅出在发射上,而且在方法部分定义的任何函数上也存在问题,因为 this 指向插件的实例。我意识到这可能不是适当的方法,我愿意接受任何建议!

1 个答案:

答案 0 :(得分:2)

您尝试过吗:

  mounted() {
    var self = this;
    this.flatpicker = flatpickr(self.$refs.dateInput, {
      onChange(date) {
        self.$emit("dateChanged", date);
      }
    });
  }