在使用 Angular 谷歌地图进行开发时,我遇到了一些非常糟糕的用户体验问题,我正在寻找有关最佳方式的建议。
相关模板:
<ui-gmap-google-map center="map.center" zoom="map.zoom" draggable="true" options="options" bounds="map.bounds">
<ui-gmap-markers doCluster="true" models="randomMarkers" coords="'self'" icon="'icon'">
</ui-gmap-markers>
</ui-gmap-google-map>
Plunkr:http ://plnkr.co/edit/mZvN6wCT9LCl1DWGojZD?p=preview
两个问题,都与集群有关:
首先,在任何类型的地图事件中,最烦人的拖动,集群在重新绘制时会闪烁,即使集群没有改变位置。
其次,当集群从地图的可见部分脱落时,它们会消失,这可能对性能有好处,但如果您以高缩放级别处理地图,则更多的是 UI 痛苦,其中事物进出地图随时查看。
这些问题在 markercluster 演示页面上并不明显:http: //gmaps-utility-library-dev.googlecode.com/svn/tags/markerclusterer/1.0/examples/advanced_example.html
你是如何解决这些问题的?我已经查看了角度谷歌地图和markerclustererplus的API,但无济于事。
我假设聚类器只会找出哪些点属于一起,然后制作一个象征该集合的标记。然而,集群的行为似乎与标记(例如上述问题)如此不同,以至于情况并非如此。