我在项目中使用reactjs和谷歌地图
我想显示一些标记,但是当我点击我的标记时,我的所有标记都会出现
我想当时只打开一个标记(onclick) 你能告诉我我的功能有什么问题吗?
const MapWithAMakredInfoWindow = compose(
withStateHandlers(() => ({
isOpen: false,
}), {
onToggleOpen: ({ isOpen }) => () => ({
isOpen: !isOpen,
})
}),
withScriptjs,
withGoogleMap
)(props =>
<GoogleMap
defaultZoom={8}
defaultCenter={{ lat: 44.8350088, lng: -0.5872689999999999 }}
>
{this.state.PartenaireData.map(function (item, i) {
if (item.coordinates.latitude && item.coordinates.longitude)
return (
<Marker
position={{ lat: item.coordinates.latitude, lng: item.coordinates.longitude }}
onClick={props.onToggleOpen}
key={i}
>
{ (props.isOpen ) &&
<InfoWindow onCloseClick={props.onToggleOpen}>
<div>
<div>{item.titre}</div>
<div >autre data</div>
</div>
</InfoWindow>}
</Marker>)
})}
</GoogleMap>
);
答案 0 :(得分:1)
string data = "";
void Start()
{
Scoreboard scoreBoard = new Scoreboard(data);
string s = string.Format ("{0}", scoreBoard);
Debug.Log ("The data is : " + s);
}
和isOpen
应该是onToggleOpen
而不是Marker
的属性。
通过将它们传递给GoogleMap
,您将它们设为全局(对于所有标记都相同)。因此,将GoogleMap
设置为isOpen
会打开所有标记。
可能是这样的
true