Встречается на собеседованиях • сегодня

Будет ли что-либо происходить с объектом созданным в mounted во Vue

Объект, созданный в хуке mounted, будет существовать в памяти до тех пор, пока компонент не будет уничтожен. При уничтожении компонента (например, при переходе на другой роут) Vue автоматически очистит только реактивные свойства и слушатели событий, но не сторонние объекты.

Пример:

javascript
mounted() {
  this.timer = setInterval(() => {
    console.log('Tick')
  }, 1000)
}

В этом случае таймер продолжит работать даже после уничтожения компонента, что может привести к утечкам памяти. Для очистки нужно использовать хук beforeUnmount:

javascript
beforeUnmount() {
  clearInterval(this.timer)
}

Всегда очищайте сторонние ресурсы (таймеры, WebSocket соединения, подписки) в beforeUnmount.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы