gpt4 book ai didi

javascript - React 和 google-maps-react。不显示信息窗口

转载 作者:行者123 更新时间:2023-11-30 19:19:13 25 4
gpt4 key购买 nike

我正在为一个项目使用 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);

map 显示所有标记,但不显示信息窗口。我可能做错了。如何让 InfoWindow 显示标记?

这是一个picture

谢谢。

最佳答案

看起来支持 InfoWindow 作为 Marker 的子属性是 pull request已合并到尚未上线的 2.0.3 版中。截至该日期(2019 年 9 月 1 日)的最新 NPM 版本是 2.0.2。

您可以做的是在单击标记时打开一个信息窗口,方法是将信息窗口放置在标记的同一级别,然后根据单击的标记将其连接到每个标记。

看看下面的codesandbox这是基于演示。下面的示例代码。

      <Map
google={this.props.google}
onClick={this.onMapClicked}
zoom={13}
>
<Marker
name="Marker 1"
onClick={this.onMarkerClick}
position={{ lat: 37.778519, lng: -122.40564 }}
/>

<InfoWindow
marker={this.state.activeMarker}
visible={this.state.showingInfoWindow}
>
<div>
<h4>Hello</h4>
</div>
</InfoWindow>
</Map>

希望对你有帮助。

关于javascript - React 和 google-maps-react。不显示信息窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57666455/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com