Задать вопрос

Конфликт рендера у VueJS и Semantic UI — как разрешить?

Проект под NDA, поэтому не могу ничего показать.

Проблема вот в чем: есть модальное окно, в котором в таблице выводятся строки. В этих строках находятся разные input, textarea, checkbox, select и т.д., каждый из них стилизуется с помощью Semantic UI.

Когда запускаю модальное окно, VueJS заполняет эту таблицу с помощью v-for, а некоторые элементы с помощью v-if

Как я понял, сначала семантик создает модальное окно и элементы, а потом уже VueJS рендерит списки.
В итоге, модальное окно неправильно рассчитано по своей высоте (влияние рендера списков). Это исправляется при ресайзе окна, т.е. Semantic при ресайзе опять рассчитывает параметры модального окна и уже с готовым списком все правильно вычисляет.

Такая же проблема с рендером элементов: сначала Semantic раздает им стили, но так как v-if не показывает изначально эти элементы, то и Semantic их не видит. А далее VueJS рендерит и в итоге все рендерится в нативных стилях браузера (то что с помощью JS рендерится).

Как быть в этой ситуации?
  • Вопрос задан
  • 409 просмотров
Подписаться 1 Оценить 7 комментариев
Пригласить эксперта
Ответы на вопрос 1
Может v-show вместо v-if попробовать?
Ответ написан
Ваш ответ на вопрос

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

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