我正在构建一个使用react-google-maps集成组件的应用程序,并且创建了标记的自定义属性“ id”。我必须访问标记群集器单击上的聚集标记,但似乎无法访问通过getMarkers()方法创建的自定义属性。
vptr
还有其他方法可以访问标记的自定义属性吗?
答案 0 :(得分:0)
您可以通过MarkerProps.options
prop分配诸如id
之类的自定义属性,如下所示:
<MarkerClusterer onClick={this.handleMarkerClustererClick}>
{this.props.markers.map(marker => (
<Marker
options = {{marker.id}}
key={index}
position={marker.ppos}
/>
))}
</MarkerClusterer>
使用MarkerClusterer.getMarkers
方法时,这些属性将通过标记实例提供:
handleMarkerClustererClick(markerClusterer, pos) {
const clickedMarkers = markerClusterer.getMarkers();
for( let m of clickedMarkers){
console.log(m.id);
}
}
这里是a demo