我要做的是使用模板创建Google地图标记。
<google-map id="google-map" map="{{map}}" latitude="44.6" longitude="-84.5" zoom="6" drag-events="true" api-key="{{key}}" single-info-window="true">
<template is="dom-repeat" items="{{response}}" id="d" as="marker">
<google-map-marker map="{{map}}" latitude="{{marker.lat}}" longitude="{{marker.lng}}">{{marker.EventName}}</google-map-marker>
</template>
</google-map>
然后我想使用MarkerClusterer https://github.com/googlemaps/js-marker-clusterer来创建集群。发生了什么事情,当我更新模板时,我无法弄清楚在更新后使用什么事件来获取_updateMarkers
。我可以在更新后的_updateMarkers
中看到之前和之后的值。问题是我没有看到一个方法/事件,我可以使用更新的标记计数来解决问题。
我尝试将dom-ready
与模板一起使用,但只有标记数量的旧值,它总是落后一个。例如,如果我在地图上有7个标记,那么我进行缩放并且可能有5个标记,它将返回7个标记,然后再次变焦5.
正如我所说我知道_updateMarkers
正在运行,我想知道是否有一个事件/方法可以用来调用MarkerClusterer函数并用新值重新创建MarkerCluster。
谢谢!
答案 0 :(得分:0)
虽然不是您问题的直接答案,但您可以查看我之前创建的google-map-markerclusterer元素。它包含JS库的所有功能,还允许您自定义集群和标记。
答案 1 :(得分:0)
将on-rendered-item-count-changed
(docs)事件添加到您的dom-repeat
元素中。完成!