javascript - 在 InfoWindow 中添加更多信息

标签 javascript reactjs google-maps-react

所以我一直在使用 google-maps-react现在几个月了,一切正常,现在只有一点我不明白。这可能就是我无法实现这一目标的原因。

这是我的 <InfoWindow> 的结构:

<InfoWindow
    marker={this.state.activeMarker}
    visible={this.state.showingInfoWindow}
>
  <div>
      <h1>{this.state.selectedPlace.title}</h1>
   </div>
</InfoWindow>

这很好,显示了标题,但我需要更多信息。

这是我的 setState()获取该信息,以及当我点击 <Marker /> 时触发的功能:

    onMarkerClick = (props, marker) => {
        this.setState({
            selectedPlace: props,
            activeMarker: marker,
            showingInfoWindow: true
        })
    }

我只是这样调用它:

onClick={this.onMarkerClick}

但有一件事我不明白,这些值(propsmarker)从何而来?我怎样才能在其中传递另一个值?假设我想传入 m , 我怎么做?因为如果我传入 monClick()他说propsmarker失踪了……

请指导我。

最佳答案

好吧,我通过分析他是如何获得所有信息的,稍微弄明白了一点。 我已经看到 props 的值在 onMarkerClick() 中打印出来所有 Prop 都来自<Marker />本身,所以我添加了一个数据 prop用我的值(value)m

这就是我的 <Marker />现在看起来像:

<Marker
  key={uuidv1()}
  position={{ lat: m.x, lng: m.y }}
  title={m.title}
  data={m}
  onClick={this.onMarkerClick}
/>

现在在 onMarkerClick我可以简单地做 props.data我可以访问所有信息。

关于javascript - 在 InfoWindow 中添加更多信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57230021/

相关文章:

javascript - 无法在 Next.js v13 中显示加载组件

reactjs - 类型错误 : Cannot read property 'array' of undefined when trying to use google-maps-react

javascript - Google map 路线服务,如何等待所有请求完成?

reactjs - 如何从 map 上删除邻国名称?

javascript - 定期更新 Highcharts 系列数据后浏览器崩溃

javascript - 无法删除我附加的事件监听器

javascript - React hook useRef() 是如何工作的?那个引用到底是什么?

javascript - 以编程方式绘制一组正方形的边界的最佳方法是什么?

javascript - 为什么我得到 "Type ' String[] | undefined' 不是数组类型。”对于我的对象变量?

javascript - 如何使用 componentDidMount 调用 setState 而不会导致额外的渲染调用?