当我点击google maps标记时,它会注册点击,但我无法在状态改变后显示InfoWindow。
尝试在单击时设置/读取更新的状态
import React from 'react';
import {Map, InfoWindow, Marker, GoogleApiWrapper} from 'google-maps-react';
export class BathroomMap extends React.Component{
constructor(props){
super(props);
this.state = {
gmapsAPI: "https://maps.googleapis.com/maps/api/js?key="+ this.API_KEY +"&callback=initMap",
center: {
lat: 40.7367,
lng: -73.9899
},
zoom: 15,
showingInfoWindow: false,
activeMarker: {},
selectedPlace: {},
infoWindowOpen: false,
}
this.handleToggleOpen = this.handleToggleOpen.bind(this);
}
handleToggleOpen = () => {
console.log("Marker Clicked");
this.setState({
infoWindowOpen: !this.state.infoWindowOpen,
});
}
render() {
return (
<Map google={window.google} zoom={14} initialCenter={this.state.center}>
<Marker onClick={this.handleToggleOpen}
name={'Current location'} />
<InfoWindow open={this.state.infoWindowOpen} onClose={this.onInfoWindowClose}>
<div>
<h1>Marker Info Placeholder</h1>
</div>
</InfoWindow>
</Map>
);
}
}
BathroomMap = GoogleApiWrapper({
apiKey: (/*Omitted*/)
})(BathroomMap)
'''
我期望google map标记会出现某种类型的InfowWindow,但相反,infowWindowOpened返回的是未定义的
InfoWindow上的google-maps-react文档如下:
组件的可见性由可见道具控制。可见道具是一个布尔(Proptypes.bool)
,当为true时显示
,当为false时隐藏它。
有两种方法可以控制
组件的位置。可以使用位置
道具,也可以使用标记
道具将
组件直接连接到现有的
组件。
我的答案和链接的codesandbox在相关的线程React和Google-Maps-React。不显示InfoWindow希望对您有所帮助。
问题内容: 我的Android应用程序中有一个 Google Maps v2 ,上面有一些标记。当用户单击这些标记之一时,将弹出一个标题。如何在没有用户点击的情况下始终显示这些标题? 问题答案: 只需致电。请参阅https://developers.google.com/maps/documentation/android/marker#info_windows和https://developer
maps.js index.js
问题内容: 我正在使用NPM包创建Google Map和几个标记。 问题: 我们如何将默认的Google Maps标记添加到地图? 从这个Github问题来看,似乎我们需要使用onGoogleApiLoaded函数访问内部Google Maps API 。 参考Google Maps JS API文档中的示例 ,我们可以使用以下代码来呈现标记,但是如何定义对的引用? 当前代码: 问题答案: 从自述
我试图显示存储在mongodb数据库中的lat和lng的标记列表。我正在使用google-maps-react,这是我的子地图组件 我从这里的endpoint得到坐标 仍未显示
我正在构建代码段块,以便在