我可以在不丢失地图的情况下更改页面吗
Can I change pages without losing the map
我有一个 SPA,有多个页面,其中一个是 MapPage。通过打开 MapPage,我正在执行法线贴图实例化:
map = new H.Map(document.getElementById('map-container'), defaultLayers.vector.normal.map, {..});
这就是问题所在。
通过转到其他页面,我丢失了 'map-container'
html 元素和 domMarkers.
有没有办法重用 'map-container'
html 或者我每次都必须实例化新的 map
对象?或者是否有重新绘制地图的选项canvas?
是的,你可以。其实实现的方法并不多,你必须在DOM中保留地图容器,以及对地图对象的引用,否则它们将被垃圾收集器释放。
它更像是一个单页应用程序问题,而不是 HERE Maps API for JS 的特定问题。
这也意味着您必须注意隐藏 (display: none;
) 地图,使其出现在不希望出现的页面上。
我有一个 SPA,有多个页面,其中一个是 MapPage。通过打开 MapPage,我正在执行法线贴图实例化:
map = new H.Map(document.getElementById('map-container'), defaultLayers.vector.normal.map, {..});
这就是问题所在。
通过转到其他页面,我丢失了 'map-container'
html 元素和 domMarkers.
有没有办法重用 'map-container'
html 或者我每次都必须实例化新的 map
对象?或者是否有重新绘制地图的选项canvas?
是的,你可以。其实实现的方法并不多,你必须在DOM中保留地图容器,以及对地图对象的引用,否则它们将被垃圾收集器释放。
它更像是一个单页应用程序问题,而不是 HERE Maps API for JS 的特定问题。
这也意味着您必须注意隐藏 (display: none;
) 地图,使其出现在不希望出现的页面上。