首页 > 解决方案 > 无法捕获包含在 deck.gl@^7.1.10 中的 Marker 子级的 onClick 事件

问题描述

我使用了 deck.gl@^6.4.7 和 react-map-gl@^5.0.7,并放置了一个带有图标子项的标记,该子项正在侦听点击事件。当我将deck.gl 更新到7.1.10 版时,图标的点击事件停止工作。

你知道如何解决这个问题吗?

        <DeckGL
          initialViewState={{
            longitude: liveMapZoom.lng,
            latitude: liveMapZoom.lat,
            zoom: 12,
            bearing: 0,
            pitch: 0
          }}
          viewState={viewState}
          onClick={(info, event) => {
            console.log("info", info);
            console.log("event", event);
          }}
          onViewStateChange={this._onViewStateChange}
          controller={{ type: MapController, dragRotate: false }}
          layers={[
            layerCars(data)
          ]}
        >
          <ReactMapGL
            mapStyle={"mapbox://styles/mapbox/streets-v9"}
            mapboxApiAccessToken={TOKEN}
          >
           <Marker
             key={key}
             latitude={coordinates[1]}
             longitude={coordinates[0]}
            >
              <img
                alt={name}
                src={iconUrl}
                onClick={event => {
                  console.log("hey");
                }}
              />
            </Marker>
          </ReactMapGL>
        </DeckGL>

标签: reactjsonclickmarkerdeck.glreact-map-gl

解决方案


我没有找到上一个问题的解决方案,所以我将 Markers 更改为 Icon 图层。


推荐阅读