Yriii
@Yriii

Как правильно разрушить и инициализировать Swiper?

codesandbox.io/s/broken-thunder-8qnw57

Хочу разрушить карусель на разрешении меньше 800px и инициализировать на разрешении больше 800px.

Получается ее выключить и включить, но мне нужно её полностью уничтожить и снова инициализировать.
`.destroy()` и `.init()` не работают. Помогите разобраться в чем проблема?
  • Вопрос задан
  • 293 просмотра
Решения вопроса 1
Aetae
@Aetae Куратор тега Vue.js
Тлен
Как и с любым иным компонентом vue - не через залезание руками в api\dom.
Просто делаете v-if="showSwiper" и переключаете, соответственно, this.showSwiper. Если v-if="false" компонент будет разрушен и всё.

// Нормальные компоненты производят всю необходимую очистку внутри себя сами по автоматическому хуку destroy, и вам не надо не о чём заботиться. Иногда конечно встречается кривое г-но с текущей памятью, но в таких случях проще самому написать компонент с нуля.

P,S. Никогда не используйте в одном компоненте одновременно setup и methods, вообще никогда. Либо одно либо другое. Это разная парадигма.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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