Vue modal всегда перерисовывает

avatar
atma
9 августа 2021 в 04:40
157
0
0

Я пытаюсь сделать модальное окно, которое добавляет элементы карты, нажав какую-нибудь кнопку и открыв модальное окно, но каждый раз, когда модальное окно отображается/скрывается, модальное диалоговое окно всегда перерисовывается.

<div v-for="(item, key) in mapItems">
    <b-modal :id="`map${key}`">
        <iframe width="600" height="450" style="border:0" loading="lazy" allowfullscreen :src="mapSrc(item.mapUrl)"> </iframe>
    </b-modal>
</div>

Можно ли сделать так, чтобы модальный диалог оставался в домене, я хочу сделать минимальный запрос на сервер

Заранее спасибо

Источник
Iman Shafiei
9 августа 2021 в 05:29
0

Что, если вы поместите модальное окно в компонент и используете реквизиты для передачи параметров, таких как mapUrl? Кроме того, поместить модальное окно из v-for означает, что не нужно генерировать модальное окно для каждого имеющегося у вас mapItem, а создавать одно модальное окно и передавать разные параметры.

atma
9 августа 2021 в 06:11
0

@ImanShafiei Я хочу сделать его динамичным, у меня есть список, при нажатии на список открывается модальное окно с картой внутри, поэтому карта отображается при необходимости, для этого я использовал «v-for».

Estus Flask
9 августа 2021 в 06:37
2

Всегда используйте key с v-for. Это может не решить проблему, но это ее часть.

Ответы (0)