VueJS - Невозможно прочитать свойство $ router undefined [duplicate]

Вы должны добавить shebang. Шебанг - первая строка файла. Это то, что система ищет, чтобы выполнить файл.

Он должен выглядеть так:

#!/usr/bin/env python

или реальный путь

#!/usr/bin/python

Вы также должны проверить, что файл имеет право на выполнение. chmod +x file.py

Как сказал Фабиан, взгляните на Википедию: Википедия - Шебанг (ru)

19
задан Bert 8 September 2017 в 20:33
поделиться

2 ответа

Оба этих примера используют функцию стрелки () => { }, которая связывает this с контекстом, отличным от экземпляра Vue.

В соответствии с документацией :

Не используйте функции стрелок для свойства экземпляра или обратного вызова (например, vm.$watch('a', newVal => this.myMethod())). Поскольку функции стрелок привязаны к родительскому контексту, this не будет экземпляром Vue, как вы ожидали бы, и this.myMethod будет неопределенным.

Чтобы получить правильную ссылку к this в качестве экземпляра Vue используйте регулярную функцию:

mounted: function () {
  console.log(this);
}

В качестве альтернативы вы также можете использовать сокращение ECMAScript 5 для функции:

mounted() {
  console.log(this);
}
49
ответ дан Graham 16 August 2018 в 02:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: