В нашем приложении есть несколько списков предметов, где у каждого предмета есть кнопка для открытия модала.
Модал всегда одинаков для данного списка, но представленная информация зависит от предмета.
Сейчас у меня есть два решения:
1.Один модал на список
Модал присутствует только один раз в компоненте List
Соответствующая информация передается из локальной переменной с именем «selected» (в данных), чтобымодальный компонент.У каждого элемента есть кнопка, которая «выбирает» соответствующую информацию для модальной модели.
Это первое решение приносит некоторые странные механизмы для выделения выделенной информации в модальной области.И мне не очень нравится этот подход, потому что он вводит некоторое повторение.
// example pseudo markup
<div v-for="item in items">
<a @click="selected = item"></a>
</div>
<Modal data="selected"/>
2.Один модальный элемент за элемент
Модальный элемент находится внутри компонента со специальной кнопкой.Это повторяется для каждого элемента, но модальный не отображается, пока кнопка не нажата.
Это действительно удобно, и мне нравится тот факт, что мы можем инкапсулировать ответственность чистым способом.
// example pseudo markup
<div v-for="item in items">
<ButtonWithModal :info="item"/>
</div>
Вопрос
Мне просто интересно, есть ли какие-либо проблемы с производительностью, которые могут появиться в будущем.Или если есть что-то, что действительно не так.