Как использовать функцию mixins внутри другой функции mixins? - PullRequest
0 голосов
/ 17 января 2019

Как мне объединить две функции в vue mixins ??

Vue.mixin({
    methods: {
      functionOne: () => {
        console.log(1)
      }
      functionTwo: () => {
        this.functionOne()
      }
    },
    mounted () {
      this.functionTwo()
    }
})

// ожидается: console 1

// actual: console Не удается прочитать свойство 'functionOne' из неопределенного

1 Ответ

0 голосов
/ 17 января 2019

если вы используете функции стрелок ES6 с методами Vue, это меняет контекст this. Если вы сформулируете это как:

Vue.mixin({
  methods: {
    functionOne () {
      console.log(1)
    },
    functionTwo: function () {
      this.functionOne()
    }
  },
  mounted () {
    this.functionTwo()
  }
})

работает отлично.

(синтаксис functionOne () и functionTwo: function () действителен, поэтому оба они появляются в примере.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...