我正在为一个项目使用 React 和 google-maps-react 库。我正在尝试为每个标记显示 InfoWindows。但它不起作用。我已经为此查看了文档以及 GitHub 问题,但无法找到解决方案。
这是代码
import React from "react";
import { connect } from "react-redux";
import { Map, GoogleApiWrapper, Marker, InfoWindow } from "google-maps-react";
import { API_GOOGLE_MAPS } from "../config";
const mapStyles = {
width: "100%",
height: "100%"
};
export class GoogleMap extends React.Component {
render() {
let markers = this.props.vendors
? this.props.vendors.map((vendor, index) => {
return (
<Marker
key={index}
id={index}
position={{
lat: vendor.Latitude,
lng: vendor.Longitude
}}
onClick={() => console.log("You clicked me!")}
>
<InfoWindow
position={{
lat: vendor.Latitude,
lng: vendor.Longitude
}}
visible={true}
>
<div id={vendor.Latitude}>hello</div>
</InfoWindow>
</Marker>
);
})
: null;
return (
<Map google={this.props.google} zoom={13} style={mapStyles} initialCenter={this.props.mapCenter}>
{markers ? markers : null}
</Map>
);
}
}
const mapStateToProps = state => ({
vendors: state.app.vendors,
mapCenter: state.app.mapCenter
});
const WrappedContainer = GoogleApiWrapper({
apiKey: API_GOOGLE_MAPS
})(GoogleMap);
export default connect(mapStateToProps)(WrappedContainer);
地图显示所有标记,但不显示信息窗口。我可能做错了。如何让 InfoWindow 显示标记?
这是一张图片
谢谢你。