Как обновить компонент Vue.js?

Данные для компонента я получаю через метод mounted.
Я нахожусь в определенном компоненте, далее я нажимаю на ссылку и открывается этот же компонент, только с другим url параметром.
Вся проблема в том, что метод mounted работает только при инициализации компонента (как я понял) и при обновлении компонента он не срабатывает второй раз и данные компонента не обновляются.
Как быть тогда в данной ситуации и каким методом пользоваться?
  • Вопрос задан
  • 10318 просмотров
Решения вопроса 4
@Artem0071
Безработный mr. Junior
Кароч
На самом деле все проще чем тут пытаются навязать

Все функции делайте в methods().

Когда первый раз загружаете компонент, то вместо всей функции вызывайте соответствующий метод, например this.startComponent()

Затем создаете watch

Этот watch будет выглядеть как то так:
watch: {
  '$route'(){
      this.startComponent()
  }
}


И тогда все заработает как вы хотите

Про watch с route можете прочитать тут
Ответ написан
coderisimo
@coderisimo Куратор тега JavaScript
Ответ написан
Комментировать
@numfin
За поведение компонента по твоей логике отвечает родитель, вот в родителей данные и получай, а потом в props эти данные передавай
Ответ написан
Комментировать
@GrungeDev
Для манипуляции данными внутри компонента необходимо объявить метод и установить слушатель в хуке created()
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы