Могу ли я менять страницы, не теряя карту - PullRequest
0 голосов
/ 07 мая 2020

У меня есть SPA и несколько страниц, одна из которых - MapPage. Открывая MapPage, я создаю экземпляр обычной карты:

map = new H.Map(document.getElementById('map-container'), defaultLayers.vector.normal.map, {..});

И вот в чем проблема. Переходя на другую страницу, я теряю элемент 'map-container' html и domMarkers.

Есть ли способ повторно использовать 'map-container' html или мне нужно создать экземпляр нового объекта map каждый раз? Или есть возможность перерисовать холст карты?

1 Ответ

0 голосов
/ 08 мая 2020

Да, можно. На самом деле существует не так много способов добиться этого, вы должны сохранить контейнер карты в DOM и ссылки на объекты карты, иначе они будут освобождены сборщиком мусора.

Это скорее Проблема с одностраничным приложением, чем что-то определенное c для HERE Maps API для JS.

Это также означает, что вам нужно позаботиться о том, чтобы скрыть (display: none;) карту на тех страницах, где она не ожидается появления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...